Index: ChangeLog =================================================================== --- ChangeLog (revision 30229) +++ ChangeLog (working copy) @@ -1,3 +1,13 @@ +2010-04-24 Nicola Pero + + Fixed problem reported by Chris Corbyn where + precompiled headers only worked if they had a .h extension, and + not a .pch extension, which is common for projects originally + built using Apple XCode. + * rules.make: Changed precompiled header rules to work to generate + %.gch from %, no matter what extension the original header has. + * Instance/rules.make: Same change. + 2010-04-22 Nicola Pero * Instance/library.make: Use LIBRARY_NAME_WITHOUT_LIB instead of Index: Instance/rules.make =================================================================== --- Instance/rules.make (revision 30229) +++ Instance/rules.make (working copy) @@ -336,16 +336,16 @@ # OBJCC_PRECOMPILED_HEADERS variable # -C_PRECOMPILED_OBJS = $(patsubst %.h,%.h.gch,$($(GNUSTEP_INSTANCE)_C_PRECOMPILED_HEADERS)) +C_PRECOMPILED_OBJS = $(patsubst %,%.gch,$($(GNUSTEP_INSTANCE)_C_PRECOMPILED_HEADERS)) C_PRECOMPILED_OBJ_FILES = $(addprefix $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/C/,$(C_PRECOMPILED_OBJS)) -OBJC_PRECOMPILED_OBJS = $(patsubst %.h,%.h.gch,$($(GNUSTEP_INSTANCE)_OBJC_PRECOMPILED_HEADERS)) +OBJC_PRECOMPILED_OBJS = $(patsubst %,%.gch,$($(GNUSTEP_INSTANCE)_OBJC_PRECOMPILED_HEADERS)) OBJC_PRECOMPILED_OBJ_FILES = $(addprefix $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjC/,$(OBJC_PRECOMPILED_OBJS)) -CC_PRECOMPILED_OBJS = $(patsubst %.h,%.h.gch,$($(GNUSTEP_INSTANCE)_CC_PRECOMPILED_HEADERS)) +CC_PRECOMPILED_OBJS = $(patsubst %,%.gch,$($(GNUSTEP_INSTANCE)_CC_PRECOMPILED_HEADERS)) CC_PRECOMPILED_OBJ_FILES = $(addprefix $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/CC/,$(CC_PRECOMPILED_OBJS)) -OBJCC_PRECOMPILED_OBJS = $(patsubst %.h,%.h.gch,$($(GNUSTEP_INSTANCE)_OBJCC_PRECOMPILED_HEADERS)) +OBJCC_PRECOMPILED_OBJS = $(patsubst %,%.gch,$($(GNUSTEP_INSTANCE)_OBJCC_PRECOMPILED_HEADERS)) OBJCC_PRECOMPILED_OBJ_FILES = $(addprefix $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjCC/,$(OBJCC_PRECOMPILED_OBJS)) # If any of those variables is not empty Index: rules.make =================================================================== --- rules.make (revision 30229) +++ rules.make (working copy) @@ -524,26 +524,26 @@ # We put the precompiled headers in different directories (depending # on the language) so that we can easily have different rules (that # use the appropriate compilers/flags) for the different languages. -$(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/C/%.h.gch : %.h $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/C/ +$(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/C/%.gch : % $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/C/ $(ECHO_PRECOMPILING)$(CC) $< -c \ $(filter-out $($<_FILE_FILTER_OUT_FLAGS),$(ALL_CPPFLAGS) \ $(ALL_CFLAGS)) \ $($<_FILE_FLAGS) -o $@$(END_ECHO) -$(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjC/%.h.gch : %.h $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjC/ +$(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjC/%.gch : % $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjC/ $(ECHO_PRECOMPILING)$(CC) -x objective-c-header $< -c \ $(filter-out $($<_FILE_FILTER_OUT_FLAGS),$(ALL_CPPFLAGS) \ $(ALL_OBJCFLAGS)) \ $($<_FILE_FLAGS) -o $@$(END_ECHO) -$(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/CC/%.h.gch : %.h $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/CC/ +$(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/CC/%.gch : % $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/CC/ $(ECHO_PRECOMPILING)$(CXX) -x c++-header $< -c \ $(filter-out $($<_FILE_FILTER_OUT_FLAGS),$(ALL_CPPFLAGS) \ $(ALL_CFLAGS) \ $(ALL_CCFLAGS)) \ $($<_FILE_FLAGS) -o $@$(END_ECHO) -$(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjCC/%h.gch : %.h $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjCC/ +$(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjCC/%.gch : % $(GNUSTEP_OBJ_INSTANCE_DIR)/PrecompiledHeaders/ObjCC/ $(ECHO_COMPILING)$(CXX) -x objective-c++-header $< -c \ $(filter-out $($<_FILE_FILTER_OUT_FLAGS),$(ALL_CPPFLAGS) \ $(ALL_OBJCCFLAGS)) \