uninstallpidl: pidl/Makefile
$(MAKE) -C pidl uninstall
-IDL_FILES = $(wildcard librpc/idl/*.idl)
-IDL_HEADER_FILES = $(patsubst librpc/idl/%.idl,librpc/gen_ndr/%.h,$(IDL_FILES))
-IDL_NDR_HEADER_FILES = $(patsubst librpc/idl/%.idl,librpc/gen_ndr/ndr_%.h,$(IDL_FILES))
-IDL_NDR_PARSE_C_FILES = $(patsubst librpc/idl/%.idl,librpc/gen_ndr/ndr_%.c,$(IDL_FILES))
-IDL_NDR_CLIENT_C_FILES = $(patsubst librpc/idl/%.idl,librpc/gen_ndr/ndr_%_c.c,$(IDL_FILES))
-IDL_NDR_CLIENT_HEADER_FILES = $(patsubst librpc/idl/%.idl,librpc/gen_ndr/ndr_%_c.h,$(IDL_FILES))
-IDL_NDR_SERVER_C_FILES = $(patsubst librpc/idl/%.idl,librpc/gen_ndr/ndr_%_s.c,$(IDL_FILES))
-IDL_NDR_EJS_C_FILES = $(patsubst librpc/idl/%.idl,librpc/gen_ndr/ndr_%_ejs.c,$(IDL_FILES))
-IDL_NDR_EJS_H_FILES = $(patsubst librpc/idl/%.idl,librpc/gen_ndr/ndr_%_ejs.h,$(IDL_FILES))
-
-$(IDL_HEADER_FILES) $(IDL_NDR_HEADER_FILES) $(IDL_NDR_PARSE_C_FILES) \
+include heimdal_build/perl_path_wrapper.sh ../librpc/idl-deps.pl librpc/idl/*.idl|
+
+$(IDL_HEADER_FILES) \
+ $(IDL_NDR_PARSE_H_FILES) $(IDL_NDR_PARSE_C_FILES) \
$(IDL_NDR_CLIENT_C_FILES) $(IDL_NDR_CLIENT_H_FILES) \
- $(IDL_NDR_SERVER_C_FILES) $(IDL_NDR_EJS_C_FILES) \
- $(IDL_NDR_EJS_H_FILES): idl
+ $(IDL_NDR_SERVER_C_FILES) \
+ $(IDL_NDR_EJS_C_FILES) $(IDL_NDR_EJS_H_FILES): idl
idl_full: pidl/lib/Parse/Pidl/IDL.pm
@CPP="$(CPP)" PERL="$(PERL)" srcdir=$(srcdir) $(srcdir)/script/build_idl.sh FULL $(PIDL_ARGS)
@echo "You need to rerun ./autogen.sh and ./configure"
@/bin/false
-clean_pch:
- -rm -f include/includes.h.gch
+clean_pch:
+ @echo "Removing precompiled headers"
+ @-rm -f include/includes.h.gch
pch: clean_pch include/includes.h.gch
@echo Removing libraries
@-rm -f $(STATIC_LIBRARIES) $(SHARED_LIBRARIES)
@-rm -f bin/*.$(SHLIBEXT)*
+ @-rm -f bin/*.a
@echo Removing modules
@-rm -f bin/modules/*/*.$(SHLIBEXT)
@-rm -f bin/*_init_module.c
@$(CC) -M -MG -MP -MT $(<:.c=.o) `$(PERL) $(srcdir)/script/cflags.pl $@` $(CFLAGS) $< -o $@
.c.hd:
- @echo "Generating dependencies for $<"
+ @echo "Generating host-compiler dependencies for $<"
@$(CC) -M -MG -MP -MT $(<:.c=.ho) `$(PERL) $(srcdir)/script/cflags.pl $@` $(CFLAGS) $< -o $@
include/includes.d: include/includes.h
clean::
@echo Removing dependency files
- @rm -f $(DEP_FILES)
+ @find . -name \*.d -o -name \*.hd | xargs rm -f
+