| #************************************************************** |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| #************************************************************** |
| |
| |
| |
| PRJ=.. |
| |
| PRJNAME=moz |
| TARGET=moz_unzip |
| |
| # --- Settings ----------------------------------------------------- |
| |
| .INCLUDE : settings.mk |
| |
| # --- Files -------------------------------------------------------- |
| |
| .IF "$(PREBUILD_MOZAB)" == "" || "$(SYSTEM_MOZILLA)" == "YES" || "$(WITH_MOZILLA)" == "NO" |
| |
| dummy: |
| @echo "No need to unpack the prebuilt mozab packages" |
| |
| .ELSE # unpack mozab zips |
| .INCLUDE : target.mk |
| |
| .IF "$(BUILD_MOZAB)"=="TRUE" |
| ALLTAR: |
| @echo "Does not need build mozab zipped!" |
| .ELSE |
| ALLTAR: \ |
| $(MISC)$/unpacked_$(TARGET)_inc \ |
| $(MISC)$/unpacked_$(TARGET)_lib \ |
| $(BIN)$/mozruntime.zip \ |
| $(MISC)$/replace_old_nss_libs |
| .ENDIF |
| .IF "$(GUI)" == "UNX" |
| |
| $(MISC)$/unpacked_%_lib : $(OS)$(COM)$(CPU)lib.zip '$(OS)$(COM)$(CPU)runtime.zip' |
| unzip -o -d $(LB) $(OS)$(COM)$(CPU)lib.zip && unzip -o -d $(LB) $(OS)$(COM)$(CPU)runtime.zip && $(TOUCH) $@ |
| chmod -R 775 $(LB) |
| |
| $(MISC)$/unpacked_%_inc : $(OS)$(COM)$(CPU)inc.zip |
| unzip -o -d $(INCCOM) $(OS)$(COM)$(CPU)inc.zip && $(TOUCH) $@ |
| chmod -R 775 $(INCCOM) |
| |
| .ELSE |
| |
| $(MISC)$/unpacked_$(TARGET)_lib : $(OS)$(COM)$(CPU)lib.zip |
| unzip -o -d $(LB) $(OS)$(COM)$(CPU)lib.zip && \ |
| $(TOUCH) $@ |
| |
| $(MISC)$/unpacked_$(TARGET)_inc : $(OS)$(COM)$(CPU)inc.zip |
| unzip -o -d $(INCCOM) $(OS)$(COM)$(CPU)inc.zip && $(TOUCH) $@ |
| |
| .ENDIF |
| |
| $(BIN)$/mozruntime%zip : $(OS)$(COM)$(CPU)runtime.zip |
| $(COPY) $(OS)$(COM)$(CPU)runtime.zip $(BIN)$/mozruntime.zip && \ |
| chmod u+w $(BIN)$/mozruntime.zip |
| |
| # add alternative rules for universal binary moz-zips |
| .IF "$(GUIBASE)" == "aqua" |
| $(MISC)$/unpacked_%_lib : $(OS)$(COM)UBlib.zip '$(OS)$(COM)UBruntime.zip' |
| unzip -o -d $(LB) $(OS)$(COM)UBlib.zip && unzip -o -d $(LB) $(OS)$(COM)UBruntime.zip && $(TOUCH) $@ |
| chmod -R 775 $(LB) |
| |
| $(MISC)$/unpacked_%_inc : $(OS)$(COM)UBinc.zip |
| unzip -o -d $(INCCOM) $(OS)$(COM)UBinc.zip && $(TOUCH) $@ |
| chmod -R 775 $(INCCOM) |
| |
| $(BIN)$/mozruntime%zip : $(OS)$(COM)UBruntime.zip |
| $(COPY) $(OS)$(COM)UBruntime.zip $(BIN)$/mozruntime.zip |
| |
| .ENDIF # "$(GUIBASE)"=="aqua" |
| |
| LIBLIST = |
| BIN_RUNTIMELIST = |
| NSS_INCLUDE_LIST = |
| NSS_MODULE_RUNTIME_LIST = |
| .IF "$(ENABLE_NSS_MODULE)"=="YES" |
| # The prebuilt moz files include all the old NSS stuff from moz and not the new |
| # NSS libs, headers, etc, from the separate nss module. If we use the nss module |
| # then we must take care not to deliver the old NSS stuff from the "prebuilts" |
| .IF "$(GUI)" == "WNT" |
| FREEBL_LIB_OLD=freebl3 |
| .ELSE # "$(GUI)" == "WNT" |
| .IF "$(OS)$(CPUNAME)" == "SOLARISSPARC" |
| FREEBL_LIB_OLD=freebl_32fpu_3 |
| .ELSE # "$(OS)$(CPUNAME)" == "SOLARISSPARC" |
| FREEBL_LIB_OLD=freebl3 |
| .ENDIF # "$(OS)$(CPUNAME)" == "SOLARISSPARC" |
| .ENDIF # "$(GUI)" == "WNT" |
| |
| BIN_RUNTIMELIST= \ |
| $(FREEBL_LIB_OLD) \ |
| nspr4 \ |
| plc4 \ |
| plds4 \ |
| nss3 \ |
| ssl3 \ |
| softokn3 \ |
| smime3 |
| |
| .IF "$(GUI)"=="WNT" |
| .IF "$(COM)"=="GCC" |
| LIBLIST= \ |
| libnspr4.a \ |
| libnss3.a \ |
| libsmime3.a \ |
| libplc4.a \ |
| libplds4.a \ |
| libssl3.a |
| |
| .ELSE |
| LIBLIST= \ |
| nspr4.lib \ |
| plc4.lib \ |
| plds4.lib \ |
| nss3.lib \ |
| ssl3.lib\ |
| smime3.lib |
| .ENDIF |
| .ELSE #"$(GUI)"=="WNT" |
| LIBLIST= \ |
| lib$(FREEBL_LIB_OLD)$(DLLPOST) \ |
| libnspr4$(DLLPOST) \ |
| libsoftokn3$(DLLPOST) \ |
| libplc4$(DLLPOST) \ |
| libplds4$(DLLPOST) \ |
| libnss3$(DLLPOST) \ |
| libssl3$(DLLPOST) \ |
| libsmime3$(DLLPOST) |
| |
| .ENDIF # .IF "$(GUI)"=="WNT" |
| |
| |
| # On MacOS no include dirs nspr and nss exists in the prebuilt zip, no need to remove them |
| .IF "$(OS)" != "MACOSX" |
| NSS_INCLUDE_LIST= nspr nss |
| .ENDIF |
| |
| .IF "$(OS)" == "SOLARIS" |
| .IF "$(CPU)" == "S" #32bit |
| FREEBL=freebl_32fpu_3 freebl_32int64_3 freebl_32int_3 |
| .ELIF "$(CPU)" == "U" #64bit unxsolu4 |
| FREEBL=freebl_64int_3 freebl_64fpu_3 |
| .ELSE |
| FREEBL=freebl3 |
| .ENDIF #"$(CPU)" == "S" |
| |
| .ELSE # "$(OS)" == "SOLARIS" |
| FREEBL=freebl3 |
| .ENDIF # "$(OS)" == "SOLARIS" |
| |
| |
| #On Linux/Unix sqlite is delivered to $(SOLARLIBDIR)/sqlite/libsqlite3.so |
| #See readme.txt in module nss |
| NSS_MODULE_RUNTIME_LIST:= \ |
| $(FREEBL) \ |
| nspr4 \ |
| nss3 \ |
| nssckbi \ |
| nssdbm3 \ |
| nssutil3 \ |
| plc4 \ |
| plds4 \ |
| smime3 \ |
| softokn3 \ |
| sqlite/sqlite3 \ |
| ssl3 |
| |
| |
| .ENDIF #.IF "$(ENABLE_NSS_MODULE)"=="YES" |
| # Remove the nss libs build in moz and those build in the nss module |
| $(MISC)$/replace_old_nss_libs : $(MISC)$/unpacked_$(TARGET)_lib \ |
| $(MISC)$/unpacked_$(TARGET)_inc $(BIN)$/mozruntime.zip |
| +$(foreach,dir,$(NSS_INCLUDE_LIST) $(RENAME:s/+//) $(INCCOM)$/$(dir) \ |
| $(INCCOM)$/$(dir)_remove_me &&) echo >& $(NULLDEV) |
| $(foreach,dir,$(NSS_INCLUDE_LIST) rm -r -f $(INCCOM)$/$(dir)_remove_me &&) \ |
| echo >& $(NULLDEV) |
| $(foreach,lib,$(LIBLIST) rm -f $(LB)$/$(lib) &&) \ |
| echo >& $(NULLDEV) |
| $(foreach,lib,$(BIN_RUNTIMELIST) zip -d $(BIN)$/mozruntime.zip $(DLLPRE)$(lib:f)$(DLLPOST) &&) \ |
| echo >& $(NULLDEV) |
| .IF "$(GUI)"=="WNT" |
| +$(foreach,lib,$(NSS_MODULE_RUNTIME_LIST) zip -g -j $(BIN)$/mozruntime.zip $(SOLARBINDIR)$/$(DLLPRE)$(lib:f)$(DLLPOST) &&) \ |
| echo >& $(NULLDEV) |
| .ELSE |
| +$(foreach,lib,$(NSS_MODULE_RUNTIME_LIST) zip -g -j $(BIN)$/mozruntime.zip $(SOLARLIBDIR)$/$(lib:d)$(DLLPRE)$(lib:f)$(DLLPOST) &&) \ |
| echo >& $(NULLDEV) |
| .ENDIF |
| $(TOUCH) $@ |
| |
| .ENDIF # unpack mozab zips |
| |