1*b1cdbd2cSJim Jagielski#************************************************************** 2*b1cdbd2cSJim Jagielski# 3*b1cdbd2cSJim Jagielski# Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski# or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski# distributed with this work for additional information 6*b1cdbd2cSJim Jagielski# regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski# to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski# "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski# with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski# 11*b1cdbd2cSJim Jagielski# http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski# 13*b1cdbd2cSJim Jagielski# Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski# software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski# KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski# specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski# under the License. 19*b1cdbd2cSJim Jagielski# 20*b1cdbd2cSJim Jagielski#************************************************************** 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 25*b1cdbd2cSJim Jagielski#+++++++++++ second_build rules +++++++++++++++++++++++++++++++++++++ 26*b1cdbd2cSJim Jagielski#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 27*b1cdbd2cSJim Jagielski 28*b1cdbd2cSJim Jagielski.IF "$(SECOND_BUILD)"!="" 29*b1cdbd2cSJim Jagielski.IF "$($(SECOND_BUILD)_OBJFILES)"!="" 30*b1cdbd2cSJim Jagielski 31*b1cdbd2cSJim Jagielski$(OBJ)/$(SECOND_BUILD)_%.obj : %.cxx 32*b1cdbd2cSJim Jagielski @echo "Making: " $@ 33*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="UNX" 34*b1cdbd2cSJim Jagielski @$(RM) $@ $(@:s/.obj/.o/) 35*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXOBJ) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$(SECOND_BUILD)_$*.o $(CFLAGSINCXX)$(PWD)/$*.cxx 36*b1cdbd2cSJim Jagielski.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" 37*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/) 38*b1cdbd2cSJim Jagielski.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" 39*b1cdbd2cSJim Jagielski @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI) 40*b1cdbd2cSJim Jagielski.ELSE 41*b1cdbd2cSJim Jagielski @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ >& $(NULLDEV) $(FI) 42*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$(SECOND_BUILD)_$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx 43*b1cdbd2cSJim Jagielski.ENDIF 44*b1cdbd2cSJim Jagielski 45*b1cdbd2cSJim Jagielski$(OBJ)/$(SECOND_BUILD)_%.obj : %.c 46*b1cdbd2cSJim Jagielski @echo "Making: " $@ 47*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="UNX" 48*b1cdbd2cSJim Jagielski.IF "$(TEST)"!="" 49*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) -E $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$(SECOND_BUILD)_$*.o $*.c 50*b1cdbd2cSJim Jagielski.ELSE 51*b1cdbd2cSJim Jagielski @$(RM) $@ $(@:s/.obj/.o/) 52*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$(SECOND_BUILD)_$*.o $*.c 53*b1cdbd2cSJim Jagielski.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" 54*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/) 55*b1cdbd2cSJim Jagielski.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" 56*b1cdbd2cSJim Jagielski @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI) 57*b1cdbd2cSJim Jagielski.ENDIF 58*b1cdbd2cSJim Jagielski.ELSE 59*b1cdbd2cSJim Jagielski @$(TYPE) $(mktmp $(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)\$(SECOND_BUILD)_$*.obj $*.c ) 60*b1cdbd2cSJim Jagielski @echo. 61*b1cdbd2cSJim Jagielski.IF "$(COM)"=="GCC" 62*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)\$(SECOND_BUILD)_$*.obj $*.c 63*b1cdbd2cSJim Jagielski.ELSE 64*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CC) @$(mktmp $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)\$(SECOND_BUILD)_$*.obj $*.c ) 65*b1cdbd2cSJim Jagielski.ENDIF 66*b1cdbd2cSJim Jagielski $(SEMADEBUG) 67*b1cdbd2cSJim Jagielski.ENDIF 68*b1cdbd2cSJim Jagielski 69*b1cdbd2cSJim Jagielski.ENDIF # "$($(SECOND_BUILD)_OBJFILES)"!="" 70*b1cdbd2cSJim Jagielski 71*b1cdbd2cSJim Jagielski.IF "$($(SECOND_BUILD)_SLOFILES)"!="" 72*b1cdbd2cSJim Jagielski 73*b1cdbd2cSJim Jagielski$(SLO)/$(SECOND_BUILD)_%.obj : %.cxx 74*b1cdbd2cSJim Jagielski @echo "Making: " $@ 75*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="UNX" 76*b1cdbd2cSJim Jagielski @$(RM) $@ $(@:s/.obj/.o/) 77*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$(SECOND_BUILD)_$*.o $(CFLAGSINCXX)$(PWD)/$*.cxx 78*b1cdbd2cSJim Jagielski.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" 79*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/) 80*b1cdbd2cSJim Jagielski.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" 81*b1cdbd2cSJim Jagielski @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI) 82*b1cdbd2cSJim Jagielski.ELSE 83*b1cdbd2cSJim Jagielski @-$(RM) $@ 84*b1cdbd2cSJim Jagielski.IF "$(COM)"=="GCC" 85*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx 86*b1cdbd2cSJim Jagielski.ELSE 87*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CXX) @$(mktmp $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx ) 88*b1cdbd2cSJim Jagielski.ENDIF 89*b1cdbd2cSJim Jagielski.ENDIF 90*b1cdbd2cSJim Jagielski 91*b1cdbd2cSJim Jagielski$(SLO)/$(SECOND_BUILD)_%.obj : %.c 92*b1cdbd2cSJim Jagielski @echo "Making: " $@ 93*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="UNX" 94*b1cdbd2cSJim Jagielski @$(RM) $@ $(@:s/.obj/.o/) 95*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$(SECOND_BUILD)_$*.o $*.c 96*b1cdbd2cSJim Jagielski.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" 97*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/) 98*b1cdbd2cSJim Jagielski.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" 99*b1cdbd2cSJim Jagielski @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI) 100*b1cdbd2cSJim Jagielski.ELSE 101*b1cdbd2cSJim Jagielski @-$(RM) $@ 102*b1cdbd2cSJim Jagielski.IF "$(COM)"=="GCC" 103*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $*.c 104*b1cdbd2cSJim Jagielski.ELSE 105*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(TYPE) $(mktmp $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $*.c ) 106*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CC) @$(mktmp $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $*.c ) 107*b1cdbd2cSJim Jagielski.ENDIF 108*b1cdbd2cSJim Jagielski.ENDIF 109*b1cdbd2cSJim Jagielski 110*b1cdbd2cSJim Jagielski.ENDIF # "$($(SECOND_BUILD)_SLOFILES)"!="" 111*b1cdbd2cSJim Jagielski.ENDIF # "$(SECOND_BUILD)"!="" 112*b1cdbd2cSJim Jagielski 113*b1cdbd2cSJim Jagielski#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 114*b1cdbd2cSJim Jagielski#+++++++++++ srcipting rules ++++++++++++++++++++++++++++++++++++++++ 115*b1cdbd2cSJim Jagielski#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 116*b1cdbd2cSJim Jagielski 117*b1cdbd2cSJim Jagielski.IF "$(PARFILES)"!="" 118*b1cdbd2cSJim JagielskiULFPARFILES=$(foreach,i,$(ULFFILES) $(foreach,j,$(SCP_PRODUCT_TYPE) $(PAR)/$j/$(i:b).par)) 119*b1cdbd2cSJim JagielskiMOREPARFILES=$(foreach,i,$(PARFILES) $(foreach,j,$(SCP_PRODUCT_TYPE) $(PAR)/$j/$i )) 120*b1cdbd2cSJim JagielskiALLPARFILES=$(uniq $(ULFPARFILES) $(MOREPARFILES)) 121*b1cdbd2cSJim Jagielski 122*b1cdbd2cSJim JagielskiSCP_PRODUCT_TYPE*=FAT 123*b1cdbd2cSJim Jagielski 124*b1cdbd2cSJim Jagielski.IF "$(GUI)" == "WNT" 125*b1cdbd2cSJim JagielskiLANGFILEEXT=mlf 126*b1cdbd2cSJim Jagielski.ELSE 127*b1cdbd2cSJim JagielskiLANGFILEEXT=jlf 128*b1cdbd2cSJim Jagielski.ENDIF 129*b1cdbd2cSJim Jagielski 130*b1cdbd2cSJim Jagielski$(PAR)/%.par : 131*b1cdbd2cSJim Jagielski @echo "Making: " $@ 132*b1cdbd2cSJim Jagielski @@-$(MKDIR) $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))} 133*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="WNT" 134*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CPPLCC) -+ -P $(INCLUDE) $(CDEFS) $(SCPDEFS) -DDLLPOSTFIX=$(DLLPOSTFIX) $(*:b).scp > $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre 135*b1cdbd2cSJim Jagielski.ENDIF 136*b1cdbd2cSJim Jagielski# YD: INCLUDE macro too long, include only few items (scp2 compile) 137*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="OS2" 138*b1cdbd2cSJim Jagielski $(CPPLCC) -+ -P -I../../inc -I../../os2gcci.pro/inc $(CDEFS) $(SCPDEFS) -DDLLPOSTFIX=$(DLLPOSTFIX) $(*:b).scp > $(MISC)$/{$(subst,$(@:d:d:d), $(@:d:d))}$/$(*:b).pre 139*b1cdbd2cSJim Jagielski.ENDIF 140*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="UNX" 141*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/cpp.lcc -+ -P $(CDEFS) $(SCPDEFS) -DDLLPOSTFIX=$(DLLPOSTFIX) -I. -I$(INC) -I$(INCLOCAL) -I$(INCGUI) -I$(INCCOM) $(SOLARINC) $(*:b).scp > $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre 142*b1cdbd2cSJim Jagielski.ENDIF 143*b1cdbd2cSJim Jagielski.IF "$(common_build_srs)"!="" 144*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(SCPCOMP) -l {$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(TARGET)/$(@:b).$(LANGFILEEXT)} -s $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre -o $@ 145*b1cdbd2cSJim Jagielski.ELSE # "$(common_build_srs)"!="" 146*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(SCPCOMP) -l {$(MISC)/$(TARGET)/$(@:b).$(LANGFILEEXT)} -s $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre -o $@ 147*b1cdbd2cSJim Jagielski.ENDIF # "$(common_build_srs)"!="" 148*b1cdbd2cSJim Jagielski# hacked version 149*b1cdbd2cSJim Jagielski# $(COMMAND_ECHO)$(SCPCOMP) -l $(@:b).$(LANGFILEEXT) -s $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre -o $@ 150*b1cdbd2cSJim Jagielski 151*b1cdbd2cSJim Jagielski.ENDIF # "$(PARFILES)"!="" 152