Am Sonntag, den 07.01.2007, 12:53 +0100 schrieb Thomas Porschberg: > I upgraded automake from 1.9.6 to 1.0 and get some > warnings about make-rules which are GNU make extensions. > I would like to remove the warnings.
You can make them "disappear" using AM_INIT_AUTOMAKE([-Wno-portablity]) or AUTOMAKE_OPTIONS = -Wno-portability > One warning is about: > > %.cpp: %.h %.ui > $(UIC) -o $@ -i $^ > > gives > ... `%'-style pattern rules are a GNU make extension You could try a suffix rule SUFFIXES = .cpp .h .ui .h.cpp: $(UIC) -o $@ -i $^ $*.ui Shall work. Give it a try. > and another > > BUILT_SOURCES = \ > $(filter %.qm,$(TRANSLATIONS:%.ts=%.qm)) > > gives > > ... filter %.qm,$(TRANSLATIONS: non-POSIX variable name > ... (probably a GNU make extension) I think, $(filter ...) is not necessary here. $(TRANSLATIONS:%.ts=%.qm) should already do, what you want and only contain .qm files - except the case that $(TRANSLATIONS) contains files with extensions != .ts. In this case you can only avoid your filter by putting only files with .ts extension into the TRANSLATIONS variable (splitting the TRANSLATIONS variable into several variables). > Can someone give me an advice how to rewrite the make rules ? HTH Regards, Daniel