office-gobmx/solenv/inc/tg_jar.mk
Oliver Bolte 572c3f1d29 INTEGRATION: CWS vq12 (1.13.146); FILE MERGED
2005/02/27 02:12:52 vq 1.13.146.1: #i29675# Remove some $(USE_SHELL) checks using $(USQ) and $(EMQ).
2005-03-18 09:14:13 +00:00

142 lines
5 KiB
Makefile

#*************************************************************************
#
# $RCSfile: tg_jar.mk,v $
#
# $Revision: 1.14 $
#
# last change: $Author: obo $ $Date: 2005-03-18 10:14:13 $
#
# The Contents of this file are made available subject to the terms of
# either of the following licenses
#
# - GNU Lesser General Public License Version 2.1
# - Sun Industry Standards Source License Version 1.1
#
# Sun Microsystems Inc., October, 2000
#
# GNU Lesser General Public License Version 2.1
# =============================================
# Copyright 2000 by Sun Microsystems, Inc.
# 901 San Antonio Road, Palo Alto, CA 94303, USA
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License version 2.1, as published by the Free Software Foundation.
#
# This library 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 GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307 USA
#
#
# Sun Industry Standards Source License Version 1.1
# =================================================
# The contents of this file are subject to the Sun Industry Standards
# Source 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.openoffice.org/license.html.
#
# Software provided under this License is provided on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
# See the License for the specific provisions governing your rights and
# obligations concerning the Software.
#
# The Initial Developer of the Original Code is: Sun Microsystems, Inc.
#
# Copyright: 2000 by Sun Microsystems, Inc.
#
# All Rights Reserved.
#
# Contributor(s): _______________________________________
#
#
#
#*************************************************************************
.IF "$(JARTARGETN)"!=""
.IF "$(JARCOMPRESS)"==""
JARCOMPRESS_FLAG=0
.ENDIF
.IF "$(NEW_JAR_PACK)"!=""
$(JARTARGETN) : $(JARMANIFEST)
.ENDIF # "$(NEW_JAR_PACK)"!=""
.IF "$(NEW_JAR_PACK)"!=""
.IF "$(JARMANIFEST)"!=""
.IF "$(CUSTOMMANIFESTFILE)"!=""
CUSTOMMANIFESTFILEDEP:=$(MISC)$/$(TARGET)_$(CUSTOMMANIFESTFILE:f)
$(MISC)$/$(TARGET)_$(CUSTOMMANIFESTFILE:f) : $(subst,/,$/ $(DMAKE_WORK_DIR))$/$(CUSTOMMANIFESTFILE)
+-$(RM) $@
#>& $(NULLDEV)
+$(COPY) $< $@
.ENDIF # "$(CUSTOMMANIFESTFILE)"!=""
.IF "$(USE_EXTENDED_MANIFESTFILE)"!=""
EXTENDEDMANIFESTFILE=$(MISC)$/$(JARTARGET:b)
.IF "$(JARMANIFEST)"!=""
$(JARMANIFEST) : $(EXTENDEDMANIFESTFILE)
.ENDIF # "$(JARMANIFEST)"!=""
$(MISC)$/$(JARTARGET:b) : $(SOLARINCDIR)$/$(UPD)minor.mk
@+echo Specification-Title: $(SPECTITLE) > $@
@+echo Specification-Version: $(VERSION) >> $@
@+echo Specification-Vendor: $(VENDOR) >> $@
@+echo Implementation-Title: $(IMPLTITLE) >> $@
# $(RSCREVISION) contains chars that must be quoted (for *NIX shells)
@+echo $(USQ)Implementation-Version: $(RSCREVISION)$(USQ) >> $@
@+echo Implementation-Vendor: $(VENDOR) >> $@
.ENDIF # "$(USE_EXTENDED_MANIFESTFILE)"!=""
.IF "$(EXTENDEDMANIFESTFILE)"!=""
EXTENDEDMANIFESTFILEDEP:=$(MISC)$/$(TARGET)_$(EXTENDEDMANIFESTFILE:f)
$(MISC)$/$(TARGET)_$(EXTENDEDMANIFESTFILE:f) : $(EXTENDEDMANIFESTFILE)
+-$(RM) $@
+$(COPY) $(EXTENDEDMANIFESTFILE) $@
.ENDIF # "$(EXTENDEDMANIFESTFILE)"!=""
$(JARMANIFEST) .PHONY : $(CUSTOMMANIFESTFILEDEP) $(EXTENDEDMANIFESTFILEDEP)
+-$(MKDIR) $(@:d) >& $(NULLDEV)
+-$(RM) $@ >& $(NULLDEV)
+echo Manifest-Version: 1.0 > $@
# $(RSCREVISION) contains chars that must be quoted (for *NIX shells)
+echo $(USQ)Solar-Version: $(RSCREVISION)$(USQ) >> $@
.IF "$(EXTENDEDMANIFESTFILE)"!=""
+$(TYPE) $(MISC)$/$(TARGET)_$(EXTENDEDMANIFESTFILE:f) >> $@
.ENDIF # "$(EXTENDEDMANIFESTFILE)"!=""
.IF "$(CUSTOMMANIFESTFILE)"!=""
+$(TYPE) $(MISC)$/$(TARGET)_$(CUSTOMMANIFESTFILE:f) >> $@
.ENDIF # "$(CUSTOMMANIFESTFILE)"!=""
.ENDIF # "$(JARMANIFEST)"!=""
.ENDIF # "$(NEW_JAR_PACK)"!=""
#
# build jar
#
.IF "$(NOJARDEP)"!="" || "$(NEW_JAR_PACK)"!=""
$(JARTARGETN) .PHONY :
# $(JARMANIFEST)
.ELSE # "$(NOJARDEP)"!="" || "$(NEW_JAR_PACK)"!=""
.DIRCACHE = no
$(JARTARGETN) :
#$(JARTARGETN) .SETDIR=$(CLASSDIR) .SEQUENTIAL : $(JARTARGETDEP) $(shell -cat -s $(MISC)$/$(JARTARGETN).dep )
.ENDIF # "$(NOJARDEP)"!="" || "$(NEW_JAR_PACK)"!=""
.IF "$(OS)$(CPU)"=="SOLARISS"
@+-find . -type d -user $(USER) ! -perm -5 -print | xargs test "$$1" != "" && chmod +r $$1
.ENDIF
+cd $(CLASSDIR) && zip -u -rX $(@:f) $(subst,$(CLASSDIR)$/, $(JARMANIFEST)) $(subst,\,/ $(JARCLASSDIRS)) $(CHECKZIPRESULT)
.ENDIF