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# unroll begin 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="WNT" 28*b1cdbd2cSJim Jagielskicommand_seperator=&& 29*b1cdbd2cSJim Jagielski#command_seperator=^ 30*b1cdbd2cSJim JagielskiEQ= 31*b1cdbd2cSJim Jagielskiavoid_cvs_dir=-x "*CVS*" -x "*.svn*" 32*b1cdbd2cSJim Jagielski.ELIF "$(GUI)"=="OS2" 33*b1cdbd2cSJim Jagielskicommand_seperator=&& 34*b1cdbd2cSJim JagielskiEQ=\\ 35*b1cdbd2cSJim Jagielskiavoid_cvs_dir=-x "*CVS*" -x "*.svn*" 36*b1cdbd2cSJim Jagielski.ELSE 37*b1cdbd2cSJim Jagielskicommand_seperator=; 38*b1cdbd2cSJim JagielskiEQ= 39*b1cdbd2cSJim Jagielskiavoid_cvs_dir=-x "*CVS*" -x "*.svn*" 40*b1cdbd2cSJim Jagielski 41*b1cdbd2cSJim Jagielski.ENDIF 42*b1cdbd2cSJim Jagielski 43*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)TARGET)"!="" 44*b1cdbd2cSJim Jagielski 45*b1cdbd2cSJim JagielskiZIP$(TNR)EXT*=.zip 46*b1cdbd2cSJim Jagielski.IF "$(common_build_zip)"!="" 47*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)LIST:s/LANGDIR//)" == "$(ZIP$(TNR)LIST)" 48*b1cdbd2cSJim JagielskiZIP$(TNR)TARGETN=$(COMMONBIN)/$(ZIP$(TNR)TARGET)$(ZIP$(TNR)EXT) 49*b1cdbd2cSJim Jagielski.ELSE 50*b1cdbd2cSJim JagielskiZIP$(TNR)TARGETN=$(foreach,i,$(zip$(TNR)alllangiso) $(COMMONBIN)/$(ZIP$(TNR)TARGET)_$i$(ZIP$(TNR)EXT) ) 51*b1cdbd2cSJim Jagielski.ENDIF 52*b1cdbd2cSJim Jagielski.ELSE # "$(common_build_zip)"!="" 53*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)LIST:s/LANGDIR//)" == "$(ZIP$(TNR)LIST)" 54*b1cdbd2cSJim JagielskiZIP$(TNR)TARGETN=$(BIN)/$(ZIP$(TNR)TARGET)$(ZIP$(TNR)EXT) 55*b1cdbd2cSJim Jagielski.ELSE 56*b1cdbd2cSJim JagielskiZIP$(TNR)TARGETN=$(foreach,i,$(zip$(TNR)alllangiso) $(BIN)/$(ZIP$(TNR)TARGET)_$i$(ZIP$(TNR)EXT) ) 57*b1cdbd2cSJim Jagielski.ENDIF 58*b1cdbd2cSJim Jagielski.ENDIF # "$(common_build_zip)"!="" 59*b1cdbd2cSJim JagielskiZIP$(TNR)DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP$(TNR)TARGETN:s/$(ZIP$(TNR)EXT)/.dpzz/))) 60*b1cdbd2cSJim JagielskiZIPDEPFILES+=$(ZIP$(TNR)DEPFILE) 61*b1cdbd2cSJim Jagielski 62*b1cdbd2cSJim JagielskiZIP$(TNR)DIR*=$(ZIPDIR) 63*b1cdbd2cSJim JagielskiZIP$(TNR)FLAGS*=$(ZIPFLAGS) 64*b1cdbd2cSJim Jagielski.IF "$(zip$(TNR)generatedlangs)"!="" 65*b1cdbd2cSJim Jagielskizip$(TNR)langdirs*=$(alllangiso) 66*b1cdbd2cSJim Jagielski.ELSE # "$(zip$(TNR)generatedlangs)"!="" 67*b1cdbd2cSJim Jagielskizip$(TNR)langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP$(TNR)DIR) . $(ZIP$(TNR)DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP$(TNR)DIR) . $(ZIP$(TNR)DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" ) 68*b1cdbd2cSJim Jagielski.ENDIF # "$(zip$(TNR)generatedlangs)"!="" 69*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)FORCEALLLANG)"!="" 70*b1cdbd2cSJim Jagielskizip$(TNR)alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip$(TNR)langdirs) $(eq,$i,$j $i $(NULL)))) 71*b1cdbd2cSJim Jagielski.ELSE # "$(ZIP$(TNR)ALLLANG)" != "" 72*b1cdbd2cSJim Jagielskizip$(TNR)alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip$(TNR)langdirs) $(eq,$i,$j $i $(NULL)))) 73*b1cdbd2cSJim Jagielski.ENDIF # "$(ZIP$(TNR)ALLLANG)" != "" 74*b1cdbd2cSJim Jagielski.ENDIF # "$(ZIP$(TNR)TARGET)"!="" 75*b1cdbd2cSJim Jagielski 76*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)TARGETN)"!="" 77*b1cdbd2cSJim Jagielski 78*b1cdbd2cSJim JagielskiZIP$(TNR)TMP:=$(mktmp iii) 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim Jagielski$(MISC)/$(TARGET).$(PWD:f).$(ZIP$(TNR)TARGET).dpzz : $(ZIP$(TNR)TARGETN) 81*b1cdbd2cSJim Jagielski 82*b1cdbd2cSJim Jagielski.IF "$(common_build_zip)"!="" 83*b1cdbd2cSJim JagielskiZIP$(TNR)HELPVAR=$(COMMONBIN)/$(ZIP$(TNR)TARGET) 84*b1cdbd2cSJim Jagielski.ELSE # "$(common_build_zip)"!="" 85*b1cdbd2cSJim JagielskiZIP$(TNR)HELPVAR=$(BIN)/$(ZIP$(TNR)TARGET) 86*b1cdbd2cSJim Jagielski.ENDIF # "$(common_build_zip)"!="" 87*b1cdbd2cSJim Jagielski 88*b1cdbd2cSJim Jagielski$(ZIP$(TNR)DEPFILE) : 89*b1cdbd2cSJim Jagielski @echo # > $(MISC)/$(@:f) 90*b1cdbd2cSJim Jagielski.IF "$(common_build_zip)"!="" 91*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)DIR)" != "" 92*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP$(TNR)DIR) 93*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP$(TNR)DIR))) $(command_seperator) $(ZIPDEP) $(ZIP$(TNR)FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP$(TNR)DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP$(TNR)EXT)/))) $(foreach,j,$(ZIP$(TNR)LIST) $(EQ)"{$(subst,LANGDIR,{$(subst,$(ZIP$(TNR)TARGET)_, $(@:f:b))} $j )}$(EQ)") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f) 94*b1cdbd2cSJim Jagielski.ELSE # "$(ZIP$(TNR)DIR)" != "" 95*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP$(TNR)FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP$(TNR)EXT)/))) $(foreach,j,$(ZIP$(TNR)LIST) $(EQ)"{$(subst,LANGDIR,{$(subst,$(ZIP$(TNR)TARGET)_, $(@:f:b))} $j )}$(EQ)") $(avoid_cvs_dir) >> $(MISC)/$(@:f) 96*b1cdbd2cSJim Jagielski.ENDIF # "$(ZIP$(TNR)DIR)" != "" 97*b1cdbd2cSJim Jagielski.ELSE # "$(common_build_zip)"!="" 98*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)DIR)" != "" 99*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP$(TNR)DIR) 100*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP$(TNR)DIR))) $(command_seperator) $(ZIPDEP) $(ZIP$(TNR)FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP$(TNR)DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP$(TNR)EXT)/)) $(foreach,j,$(ZIP$(TNR)LIST) $(EQ)"{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP$(TNR)TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}$(EQ)") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f) 101*b1cdbd2cSJim Jagielski.ELSE # "$(ZIP$(TNR)DIR)" != "" 102*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP$(TNR)FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP$(TNR)EXT)/)) $(foreach,j,$(ZIP$(TNR)LIST) $(EQ)"{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP$(TNR)TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}$(EQ)") $(avoid_cvs_dir) >> $(MISC)/$(@:f) 103*b1cdbd2cSJim Jagielski.ENDIF # "$(ZIP$(TNR)DIR)" != "" 104*b1cdbd2cSJim Jagielski.ENDIF # "$(common_build_zip)"!="" 105*b1cdbd2cSJim Jagielski @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f) 106*b1cdbd2cSJim Jagielski 107*b1cdbd2cSJim Jagielski 108*b1cdbd2cSJim Jagielski$(ZIP$(TNR)TARGETN) : delzip $(ZIP$(TNR)DEPS) 109*b1cdbd2cSJim Jagielski @echo "Making: " $(@:f) 110*b1cdbd2cSJim Jagielski @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)) 111*b1cdbd2cSJim Jagielski @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles 112*b1cdbd2cSJim Jagielski.IF "$(GUI)" != "OS2" 113*b1cdbd2cSJim Jagielski @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) ) 114*b1cdbd2cSJim Jagielski.ENDIF 115*b1cdbd2cSJim Jagielski.IF "$(common_build_zip)"!="" 116*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)DIR)" != "" 117*b1cdbd2cSJim Jagielski @@-$(GNUCOPY) -p $@ $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) 118*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP$(TNR)HELPVAR)_, $(@:db))} $(ZIP$(TNR)DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP$(TNR)FLAGS) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $(subst,LANGDIR_away/, $(ZIP$(TNR)LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT) 119*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(IFEXIST) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $(THEN) \ 120*b1cdbd2cSJim Jagielski $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) \ 121*b1cdbd2cSJim Jagielski $(FI) 122*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(COPY) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $@.$(INPATH) 123*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(RM) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) 124*b1cdbd2cSJim Jagielski.ELSE # "$(ZIP$(TNR)DIR)" != "" 125*b1cdbd2cSJim Jagielski @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) 126*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP$(TNR)FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP$(TNR)LIST) $(subst,LANGDIR,{$(subst,$(ZIP$(TNR)HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT) 127*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \ 128*b1cdbd2cSJim Jagielski $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \ 129*b1cdbd2cSJim Jagielski $(FI) 130*b1cdbd2cSJim Jagielski @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH) 131*b1cdbd2cSJim Jagielski @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) 132*b1cdbd2cSJim Jagielski.ENDIF # "$(ZIP$(TNR)DIR)" != "" 133*b1cdbd2cSJim Jagielski @@-$(RM) $@ 134*b1cdbd2cSJim Jagielski @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI) 135*b1cdbd2cSJim Jagielski# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used... 136*b1cdbd2cSJim Jagielski.ELSE # "$(common_build_zip)"!="" 137*b1cdbd2cSJim Jagielski.IF "$(ZIP$(TNR)DIR)" != "" 138*b1cdbd2cSJim Jagielski @@-$(GNUCOPY) -p $@ $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) 139*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP$(TNR)HELPVAR)_, $(@:db))} $(ZIP$(TNR)DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP$(TNR)FLAGS) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $(subst,LANGDIR_away/, $(ZIP$(TNR)LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT) 140*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(IFEXIST) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $(THEN) \ 141*b1cdbd2cSJim Jagielski $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) \ 142*b1cdbd2cSJim Jagielski $(FI) 143*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(COPY) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $@ 144*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(RM) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) 145*b1cdbd2cSJim Jagielski.ELSE # "$(ZIP$(TNR)DIR)" != "" 146*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP$(TNR)FLAGS) $@ $(foreach,j,$(ZIP$(TNR)LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP$(TNR)TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT) 147*b1cdbd2cSJim Jagielski $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \ 148*b1cdbd2cSJim Jagielski $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \ 149*b1cdbd2cSJim Jagielski $(FI) 150*b1cdbd2cSJim Jagielski.ENDIF # "$(ZIP$(TNR)DIR)" != "" 151*b1cdbd2cSJim Jagielski.ENDIF # "$(common_build_zip)"!="" 152*b1cdbd2cSJim Jagielski.ENDIF 153*b1cdbd2cSJim Jagielski 154*b1cdbd2cSJim Jagielski# unroll end 155*b1cdbd2cSJim Jagielski####################################################### 156*b1cdbd2cSJim Jagielski 157