# # The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/MPL/ # Alternatively, the contents of this file may be used under the # terms of the GNU General Public License Version 2 or later (the # "GPL"), in which case the provisions of the GPL are applicable # instead of those above. You may obtain a copy of the Licence at # http://www.gnu.org/copyleft/gpl.html # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # Relevant for more details. # # This file was created by members of the firebird development team. # All individual contributions remain the Copyright (C) of those # individuals. Contributors to this file are either listed here or # can be obtained from a CVS history command. # # All rights reserved. # # Created by: Mark O'Donohue # # Contributor(s): # # # #____________________________________________________________________________ # Please don't use compiler/platform specific flags here - nmcc 02-Nov-2002 WFLAGS =-I$(SRC_ROOT)/include/gen -I$(SRC_ROOT)/include $(CPPFLAGS) $(LTCSOURCE) ifneq ($(SYSTEM_BOOST_FLG),Y) WFLAGS += -I$(ROOT)/extern/boost endif WFLAGS += -I$(LIBCDS_INC) -D$(LIBCDS_DEF) ifeq ($(TOMMATH_BUILD_FLG),Y) WFLAGS += -I$(TOMMATH_INC) endif ifeq ($(TOMCRYPT_BUILD_FLG),Y) WFLAGS += -I$(TOMCRYPT_INC) endif ifeq ($(RE2_BUILD_FLG),Y) WFLAGS += -I$(ROOT)/extern/re2 endif ifeq ($(ABSEIL_BUILD_FLG),Y) WFLAGS += -I$(ROOT)/extern/int128 endif ifeq ($(LSB_FLG),Y) WFLAGS += -DLSB_BUILD endif ifeq ($(TARGET),Release) WFLAGS += $(PROD_FLAGS) else WFLAGS += $(DEV_FLAGS) -DDEV_BUILD endif WCFLAGS = $(WFLAGS) $(CFLAGS) $(AC_CFLAGS) $(GLOB_OPTIONS) WCXXFLAGS = $(WFLAGS) $(PLUSPLUS_FLAGS) $(PLATFORM_PLUSPLUS_FLAGS) $(CXXFLAGS) $(AC_CXXFLAGS) $(GLOB_OPTIONS) WLDFLAGS = $(LDFLAGS) $(AC_LDFLAGS) ifneq ($(PLATFORM),DARWIN) WLDFLAGS += -static-libstdc++ endif # Here we have definitions for using the preprocessor. # The GPRE_FLAGS is overwritten in Makefile.in.jrd Makefile.in.gpre and # since they do something extra to allow the boot build to work. # # One other point is that sometimes a failure in compile with gpre does not # result in an error being generated. The generated source file still # compiles and throws the make off the path. # # This bit of code is part of unfinished bit to let make determine if # gpre gpre_static or gpre_boot should be used based on which ones exist. # # testgpre = $(shell if [ -f $(GPRE) ]; then; echo $(GPRE); else; echo ""; fi) #test1: # $(ECHO) $(testgpre) GPRE_FLAGS= -m -z -n JRD_GPRE_FLAGS = -n -z -gds_cxx -ids OBJECT_GPRE_FLAGS = -m -z -n -ocxx .SUFFIXES: .c .e .epp .cpp .e.c: $(GPRE_CURRENT) $(GPRE_FLAGS) $< $@ $(OBJ)/jrd/%.cpp: $(SRC_ROOT)/jrd/%.epp $(GPRE_CURRENT) $(JRD_GPRE_FLAGS) $(firstword $<) $@ $(OBJ)/isql/%.cpp: $(SRC_ROOT)/isql/%.epp $(GPRE_CURRENT) $(OBJECT_GPRE_FLAGS) $< $@ $(OBJ)/burp/%.cpp: $(SRC_ROOT)/burp/%.epp $(GPRE_CURRENT) $(OBJECT_GPRE_FLAGS) $< $@ $(OBJ)/%.cpp: $(SRC_ROOT)/%.epp $(GPRE_CURRENT) $(GPRE_FLAGS) $(firstword $<) $@ .SUFFIXES: .lo .o .cpp .c .cc %.o: %.c $(CC) $(WCFLAGS) -c $(firstword $<) -o $@ %.o: %.cc $(CXX) $(WCFLAGS) -c $(firstword $<) -o $@ $(OBJ)/%.o: $(SRC_ROOT)/%.c $(CC) $(WCFLAGS) -c $(firstword $<) -o $@ @sed $(INLINE_EDIT_SED) -e "1,2s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@) $(OBJ)/%.o: $(SRC_ROOT)/%.m $(CC) $(WCFLAGS) -c $(firstword $<) -o $@ @sed $(INLINE_EDIT_SED) -e "1,2s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@) $(OBJ)/%.o: $(OBJ)/%.cpp $(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@ @sed $(INLINE_EDIT_SED) -e "1,2s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@) $(OBJ)/%.o: $(SRC_ROOT)/%.cpp $(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@ @sed $(INLINE_EDIT_SED) -e "1,2s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@) $(OBJ)/%.o: $(ROOT)/%.cpp $(CXX) $(WCFLAGS) -c $(firstword $<) -o $@ @sed $(INLINE_EDIT_SED) -e "1,2s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@) .SUFFIXES: .epp .e # Rules for making resource files $(GEN_ROOT)/%.res: $(SRC_ROOT)/%.rc windres --output-format=coff --include-dir=$(