2000-09-20 08:43:26 -05:00
|
|
|
|
#*************************************************************************
|
2000-10-30 06:14:55 -06:00
|
|
|
|
#
|
|
|
|
|
# $RCSfile: tg_shl.mk,v $
|
|
|
|
|
#
|
2001-01-31 03:28:39 -06:00
|
|
|
|
# $Revision: 1.16 $
|
2000-10-30 06:14:55 -06:00
|
|
|
|
#
|
2001-01-31 03:28:39 -06:00
|
|
|
|
# last change: $Author: hjs $ $Date: 2001-01-31 10:28:39 $
|
2000-10-30 06:14:55 -06:00
|
|
|
|
#
|
|
|
|
|
# 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): _______________________________________
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
2000-09-20 08:43:26 -05:00
|
|
|
|
#*************************************************************************
|
|
|
|
|
|
|
|
|
|
MKFILENAME:=tg_shl.mk
|
|
|
|
|
|
|
|
|
|
#######################################################
|
|
|
|
|
# Anweisungen fuer Rekursion
|
|
|
|
|
|
|
|
|
|
.IF "$(MULTI_SHL_FLAG)" == ""
|
|
|
|
|
$(SHL1TARGETN) .NULL : SHL1
|
|
|
|
|
|
|
|
|
|
$(SHL2TARGETN) .NULL : SHL2
|
|
|
|
|
|
|
|
|
|
$(SHL3TARGETN) .NULL : SHL3
|
|
|
|
|
|
|
|
|
|
$(SHL4TARGETN) .NULL : SHL4
|
|
|
|
|
|
|
|
|
|
$(SHL5TARGETN) .NULL : SHL5
|
|
|
|
|
|
|
|
|
|
$(SHL6TARGETN) .NULL : SHL6
|
|
|
|
|
|
|
|
|
|
$(SHL7TARGETN) .NULL : SHL7
|
|
|
|
|
|
|
|
|
|
$(SHL8TARGETN) .NULL : SHL8
|
|
|
|
|
|
|
|
|
|
$(SHL9TARGETN) .NULL : SHL9
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.IF "$(MULTI_SHL_FLAG)"==""
|
|
|
|
|
SHL1 SHL2 SHL3 SHL4 SHL5 SHL6 SHL7 SHL8 SHL9:
|
|
|
|
|
.IF "$(GUI)"=="UNX"
|
|
|
|
|
@dmake $(SHL$(TNR)TARGETN) MULTI_SHL_FLAG=true TNR:=$(TNR) $(MFLAGS) $(CALLMACROS)
|
|
|
|
|
.ELSE
|
|
|
|
|
@dmake $(SHL$(TNR)TARGETN) MULTI_SHL_FLAG=true TNR:=$(TNR) $(MFLAGS) $(CALLMACROS)
|
|
|
|
|
.ENDIF
|
|
|
|
|
.ELSE
|
|
|
|
|
|
|
|
|
|
#######################################################
|
|
|
|
|
# Anweisungen fuer das Linken
|
|
|
|
|
# unroll begin
|
|
|
|
|
|
|
|
|
|
.IF "$(OS)"=="AIX"
|
|
|
|
|
SHL$(TNR)STDLIBS=
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
.IF "$(SHLLINKARCONLY)" != ""
|
|
|
|
|
SHL$(TNR)STDLIBS=
|
|
|
|
|
STDSHL=
|
|
|
|
|
.ELSE
|
|
|
|
|
SHL$(TNR)ARCHIVES=
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
SHL$(TNR)DEF*=$(MISC)$/$(SHL$(TNR)TARGET).def
|
|
|
|
|
|
2000-12-21 13:06:32 -06:00
|
|
|
|
.IF "$(VERSIONOBJ)"!=""
|
2001-01-17 11:56:16 -06:00
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
SHL$(TNR)VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}$(VERSIONOBJ:f)
|
|
|
|
|
SHL$(TNR)VERSIONH:=$(INCCOM)$/_version.h
|
2001-01-17 11:56:16 -06:00
|
|
|
|
.ELSE # "$(UPDATER)"=="YES"
|
|
|
|
|
SHL$(TNR)VERSIONOBJ:=$(VERSIONOBJ)
|
2000-12-21 13:06:32 -06:00
|
|
|
|
.ENDIF # "$(UPDATER)"=="YES"
|
2001-01-17 11:56:16 -06:00
|
|
|
|
.ENDIF # "$(VERSIONOBJ)"!=""
|
2000-12-21 13:06:32 -06:00
|
|
|
|
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.IF "$(GUI)" != "UNX"
|
|
|
|
|
.IF "$(GUI)" == "WNT"
|
|
|
|
|
.IF "$(COM)" == "MSC"
|
|
|
|
|
.IF "$(SHL$(TNR)IMPLIB)" != ""
|
|
|
|
|
USE_$(TNR)IMPLIB=-implib:$(LB)$/$(SHL$(TNR)IMPLIB).lib
|
|
|
|
|
.ELSE # "$(SHL$(TNR)IMPLIB)" != ""
|
|
|
|
|
USE_$(TNR)IMPLIB=-implib:$(LB)$/i$(TARGET)$(TNR).lib
|
|
|
|
|
.ENDIF # "$(SHL$(TNR)IMPLIB)" != ""
|
|
|
|
|
.ENDIF # "$(COM)" == "MSC"
|
|
|
|
|
|
|
|
|
|
.IF "$(USE_DEFFILE)"==""
|
|
|
|
|
USE_$(TNR)IMPLIB_DEPS=$(LB)$/$(SHL$(TNR)IMPLIB).lib
|
|
|
|
|
.ENDIF # "$(USE_DEFFILE)"==""
|
|
|
|
|
.ENDIF # "$(GUI)" == "WNT"
|
|
|
|
|
USE_SHL$(TNR)DEF=$(SHL$(TNR)DEF)
|
|
|
|
|
.ELSE # "$(GUI)" != "UNX"
|
|
|
|
|
USE_SHL$(TNR)DEF=
|
|
|
|
|
SHL$(TNR)DEPN+:=$(SHL$(TNR)DEPNU)
|
|
|
|
|
|
|
|
|
|
# to activate vmaps remove "#"
|
|
|
|
|
#USE_SHL$(TNR)VERSIONMAP=$(MISC)$/$(SHL$(TNR)TARGET).vmap
|
|
|
|
|
|
|
|
|
|
.IF "$(USE_SHL$(TNR)VERSIONMAP)"!=""
|
|
|
|
|
|
|
|
|
|
.IF "$(DEF$(TNR)EXPORTFILE)"!=""
|
|
|
|
|
.IF "$(SHL$(TNR)VERSIONMAP)"!=""
|
|
|
|
|
#eine von beiden ist zuviel
|
|
|
|
|
USE_SHL$(TNR)VERSIONMAP=$(MISC)$/$(SHL$(TNR)TARGET).vmap
|
|
|
|
|
$(USE_SHL$(TNR)VERSIONMAP) .PHONY:
|
|
|
|
|
@+echo -----------------------------
|
|
|
|
|
@+echo you should only use versionmap OR exportfile
|
|
|
|
|
@+echo -----------------------------
|
|
|
|
|
# force_dmake_to_error
|
|
|
|
|
|
|
|
|
|
.ENDIF # "$(SHL$(TNR)VERSIONMAP)"!=""
|
|
|
|
|
|
|
|
|
|
.IF "$(OS)"!="MACOSX"
|
|
|
|
|
SHL$(TNR)VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL$(TNR)VERSIONMAP)
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
$(USE_SHL$(TNR)VERSIONMAP): \
|
|
|
|
|
$(SHL$(TNR)OBJS)\
|
|
|
|
|
$(SHL$(TNR)LIBS)\
|
|
|
|
|
$(DEF$(TNR)EXPORTFILE)
|
|
|
|
|
@+$(RM) $@.dump
|
|
|
|
|
.IF "$(SHL$(TNR)OBJS)"!=""
|
|
|
|
|
# dump remaining objects on the fly
|
2000-10-11 14:40:12 -05:00
|
|
|
|
.IF "$(OS)"=="MACOSX"
|
|
|
|
|
@-+nm $(SHL$(TNR)OBJS:s/.obj/.o/) > $@.dump
|
|
|
|
|
.ELSE
|
2000-09-20 08:43:26 -05:00
|
|
|
|
@+nm $(SHL$(TNR)OBJS:s/.obj/.o/) > $@.dump
|
2000-10-11 14:40:12 -05:00
|
|
|
|
.ENDIF
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF # "$(SHL$(TNR)OBJS)!"=""
|
|
|
|
|
@+$(TYPE) /dev/null $(SHL$(TNR)LIBS:s/.lib/.dump/) >> $@.dump
|
|
|
|
|
@+$(SOLARENV)$/bin$/genmap -d $@.dump -e $(DEF$(TNR)EXPORTFILE) -o $@
|
|
|
|
|
|
|
|
|
|
.ELSE # "$(DEF$(TNR)EXPORTFILE)"!=""
|
|
|
|
|
USE_SHL$(TNR)VERSIONMAP=$(MISC)$/$(SHL$(TNR)TARGET).vmap
|
|
|
|
|
$(USE_SHL$(TNR)VERSIONMAP) .PHONY:
|
|
|
|
|
@+echo -----------------------------
|
|
|
|
|
@+echo DEF$(TNR)EXPORTFILE not set!
|
|
|
|
|
@+echo -----------------------------
|
|
|
|
|
# force_dmake_to_error
|
|
|
|
|
.ENDIF # "$(DEF$(TNR)EXPORTFILE)"!=""
|
2001-01-22 09:54:05 -06:00
|
|
|
|
.ELSE # "$(USE_SHL$(TNR)VERSIONMAP)"!=""
|
|
|
|
|
|
|
|
|
|
#and now for the plain non-generic way...
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.IF "$(SHL$(TNR)VERSIONMAP)"!=""
|
|
|
|
|
USE_SHL$(TNR)VERSIONMAP=$(MISC)$/$(SHL$(TNR)VERSIONMAP:f)
|
|
|
|
|
.IF "$(OS)"!="MACOSX"
|
|
|
|
|
SHL$(TNR)VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL$(TNR)VERSIONMAP)
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
$(USE_SHL$(TNR)VERSIONMAP): $(SHL$(TNR)VERSIONMAP)
|
|
|
|
|
@+-$(RM) -f $@ >& $(NULLDEV)
|
|
|
|
|
@+tr -d "\015" < $(SHL$(TNR)VERSIONMAP) > $@
|
|
|
|
|
@+chmod a+w $@
|
|
|
|
|
|
|
|
|
|
.ENDIF # "$(SHL$(TNR)VERSIONMAP)"!=""
|
2001-01-22 09:54:05 -06:00
|
|
|
|
.ENDIF # "$(USE_SHL$(TNR)VERSIONMAP)"!=""
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF # "$(GUI)" != "UNX"
|
|
|
|
|
|
|
|
|
|
.IF "$(NO_REC_RES)"!=""
|
|
|
|
|
.IF "$(SHL$(TNR)RES)"!=""
|
|
|
|
|
SHL$(TNR)RES!:=$(subst,$(RES)$/,$(RES)$/$(defaultlangext)$/ $(SHL$(TNR)RES))
|
|
|
|
|
SHL$(TNR)ALLRES+=$(SHL$(TNR)RES)
|
|
|
|
|
SHL$(TNR)LINKRES*=$(MISC)$/$(SHL$(TNR)TARGET).res
|
|
|
|
|
.ENDIF # "$(SHL$(TNR)RES)"!=""
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
.IF "$(SHL$(TNR)DEFAULTRES)$(use_shl_versions)"!=""
|
|
|
|
|
SHL$(TNR)DEFAULTRES*=$(MISC)$/$(SHL$(TNR)TARGET)_def.res
|
|
|
|
|
SHL$(TNR)ALLRES+=$(SHL$(TNR)DEFAULTRES)
|
|
|
|
|
SHL$(TNR)LINKRES*=$(MISC)$/$(SHL$(TNR)TARGET).res
|
|
|
|
|
.ENDIF # "$(SHL$(TNR)DEFAULTRES)$(use_shl_versions)"!=""
|
|
|
|
|
|
2000-10-30 06:14:55 -06:00
|
|
|
|
.IF "$(NO_SHL$(TNR)DESCRIPTION)"==""
|
2000-12-21 13:06:32 -06:00
|
|
|
|
#SHL$(TNR)DESCRIPTIONOBJ*=$(SLO)$/default_description.obj
|
|
|
|
|
SHL$(TNR)DESCRIPTIONOBJ*=$(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_description.obj
|
2000-10-30 06:14:55 -06:00
|
|
|
|
.ENDIF # "$(NO_SHL$(TNR)DESCRIPTION)"==""
|
|
|
|
|
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.IF "$(SHL$(TNR)TARGETN)"!=""
|
|
|
|
|
$(SHL$(TNR)TARGETN) : \
|
|
|
|
|
$(SHL$(TNR)OBJS)\
|
2000-10-30 06:14:55 -06:00
|
|
|
|
$(SHL$(TNR)DESCRIPTIONOBJ)\
|
2000-09-20 08:43:26 -05:00
|
|
|
|
$(SHL$(TNR)LIBS)\
|
|
|
|
|
$(USE_$(TNR)IMPLIB_DEPS)\
|
|
|
|
|
$(USE_SHL$(TNR)DEF)\
|
|
|
|
|
$(USE_SHL$(TNR)VERSIONMAP)\
|
|
|
|
|
$(SHL$(TNR)RES)\
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(SHL$(TNR)VERSIONH)\
|
2000-09-20 08:43:26 -05:00
|
|
|
|
$(SHL$(TNR)DEPN)
|
|
|
|
|
@echo ------------------------------
|
|
|
|
|
@echo Making: $(SHL$(TNR)TARGETN)
|
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
@-+$(RM) $(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.obj
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF
|
|
|
|
|
.IF "$(GUI)"=="OS2"
|
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
|
|
|
|
.IF "$(COM)"=="ICC"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(CC) -c -Fo$(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.obj /Ge+ /Gs+ /Gt+ /Gd+ -DOS2 $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ELSE # "$(COM)"=="ICC"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(CC) -c -o$(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.obj -Zomf -Zso -Zsys -DOS2 $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF # "$(COM)"=="ICC"
|
|
|
|
|
.ENDIF # "$(UPDATER)"=="YES"
|
|
|
|
|
#
|
2000-10-13 11:00:19 -05:00
|
|
|
|
# todo: try with $(LINKEXTENDLINE)!
|
2000-09-20 08:43:26 -05:00
|
|
|
|
#
|
|
|
|
|
+-$(RM) $@
|
|
|
|
|
.IF "$(COM)"=="ICC"
|
|
|
|
|
$(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) @$(mktmp \
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(STDSLO:+"+\n") $(SHL$(TNR)VERSIONOBJ:+"+\n") $(SHL$(TNR)OBJS:+"+\n")), \
|
2000-09-20 08:43:26 -05:00
|
|
|
|
$(@), \
|
|
|
|
|
$(MISC)$/$(@:b).map, \
|
|
|
|
|
@$(mktmp $(SHL$(TNR)LIBS:+"+\n") $(SHL$(TNR)STDLIBS:+"+\n") $(STDSHL:+"+\n")), \
|
|
|
|
|
$(SHL$(TNR)DEF:+"\n")
|
|
|
|
|
.ELSE
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(LINK) -o $@ -Zdll -Zmap=$(MISC)$/$(@:b).map -L$(LB) $(SHL$(TNR)LIBS:^"-l") -Ln:\toolkit4\lib -Ln:\emx09d\lib\mt -Ln:\emx09d\lib -L$(SOLARLIBDIR) $(STDSLO) $(STDSHL:^"-l") $(SHL$(TNR)STDLIBS:^"-l") $(SHL$(TNR)OBJS) $(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ) $(SHL$(TNR)DEF)
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF
|
|
|
|
|
.IF "$(SHL$(TNR)RES)" != ""
|
|
|
|
|
$(RCLINK) $(RCLINKFLAGS) $(SHL$(TNR)RES) $@
|
|
|
|
|
.ENDIF # "$(COMEX)"=="3"
|
|
|
|
|
.ENDIF # "$(GUI)"=="OS2"
|
|
|
|
|
.IF "$(GUI)" == "WIN"
|
|
|
|
|
.IF "$(COM)"=="BLC"
|
|
|
|
|
+$(LINK) @$(mktmp$ $(LINKFLAGS) $(LINKFLAGSSHL) $(STDSLO) $(SHL$(TNR)OBJS), $@, $(MISC)\$(@:b).map, $(SHL$(TNR)LIBS) $(SHL$(TNR)STDLIBS) $(STDSHL), $(SHL$(TNR)DEF)) >& $(TMP)$/$(PRJNAME)$(USER).tmp
|
|
|
|
|
@+$(TYPE) $(TMP)$/$(PRJNAME)$(USER).tmp
|
|
|
|
|
@+$(RM) $(TMP)$/$(PRJNAME)$(USER).tmp
|
|
|
|
|
.ENDIF # "$(COM)"=="BLC"
|
|
|
|
|
.ENDIF # "$(GUI)"=="WIN"
|
|
|
|
|
.IF "$(GUI)" == "WNT"
|
|
|
|
|
@+if not exist $(FUNCORD) $(TOUCH) $(FUNCORD)
|
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
|
|
|
|
.IF "$(COM)"=="GCC"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
gcc -c -o$(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.obj -DWNT $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ELSE
|
2000-12-21 13:06:32 -06:00
|
|
|
|
cl -c -Fo$(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.obj -DWNT $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF # "$(COM)"=="GCC"
|
|
|
|
|
.ENDIF # "$(UPDATER)"=="YES"
|
|
|
|
|
.IF "$(SHL$(TNR)DEFAULTRES)"!=""
|
|
|
|
|
@+-$(RM) $(MISC)$/$(SHL$(TNR)DEFAULTRES:b).rc >& $(NULLDEV)
|
|
|
|
|
.IF "$(SHL$(TNR)ICON)" != ""
|
|
|
|
|
@-+echo 1 ICON $(SHL$(TNR)ICON) >> $(MISC)$/$(SHL$(TNR)DEFAULTRES:b).rc
|
|
|
|
|
.ENDIF
|
|
|
|
|
.IF "$(use_shl_versions)" != ""
|
2000-10-09 10:16:04 -05:00
|
|
|
|
@-+echo #define VERVARIANT $(BUILD) >> $(MISC)$/$(SHL$(TNR)DEFAULTRES:b).rc
|
|
|
|
|
@-+echo #define ORG_NAME $(SHL$(TNR)TARGET)$(DLLPOST) >> $(MISC)$/$(SHL$(TNR)DEFAULTRES:b).rc
|
|
|
|
|
@-+echo #define INTERNAL_NAME $(SHL$(TNR)TARGET:b) >> $(MISC)$/$(SHL$(TNR)DEFAULTRES:b).rc
|
|
|
|
|
@-+echo #include "shlinfo.rc" >> $(MISC)$/$(SHL$(TNR)DEFAULTRES:b).rc
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF # "$(use_shl_versions)" != ""
|
|
|
|
|
$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)$/$(SHL$(TNR)DEFAULTRES:b).rc
|
|
|
|
|
.ENDIF # "$(SHL$(TNR)DEFAULTRES)"!=""
|
|
|
|
|
.IF "$(SHL$(TNR)ALLRES)"!=""
|
|
|
|
|
+$(COPY) /b $(SHL$(TNR)ALLRES:s/res /res+/) $(SHL$(TNR)LINKRES)
|
|
|
|
|
.ENDIF # "$(SHL$(TNR)ALLRES)"!=""
|
|
|
|
|
.IF "$(linkinc)"==""
|
|
|
|
|
.IF "$(USE_DEFFILE)"!=""
|
|
|
|
|
.IF "$(BOTH)"!=""
|
|
|
|
|
.IF "$(PRODUCT)"=="full"
|
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
|
|
|
|
#
|
|
|
|
|
# product mit debug gelinkt
|
|
|
|
|
#
|
|
|
|
|
$(LINK) @$(mktmp \
|
|
|
|
|
$(LINKFLAGS) \
|
|
|
|
|
$(LINKFLAGSSHL) \
|
|
|
|
|
$(SHL$(TNR)STACK) $(SHL$(TNR)BASEX) \
|
|
|
|
|
/DEBUG /PDB:NONE \
|
|
|
|
|
-out:$(BIN)$/_$(SHL$(TNR)TARGET).dll \
|
2001-01-31 03:28:39 -06:00
|
|
|
|
-map:$(MISC)$/_$(@:b).map \
|
2000-09-20 08:43:26 -05:00
|
|
|
|
-def:$(SHL$(TNR)DEF) \
|
|
|
|
|
$(USE_$(TNR)IMPLIB) \
|
|
|
|
|
$(STDOBJ) \
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ) $(SHL$(TNR)OBJS) \
|
2000-09-20 08:43:26 -05:00
|
|
|
|
$(SHL$(TNR)LIBS) \
|
|
|
|
|
$(SHL$(TNR)STDLIBS) \
|
|
|
|
|
$(STDSHL) \
|
|
|
|
|
$(SHL$(TNR)LINKRES) \
|
|
|
|
|
)
|
|
|
|
|
.ENDIF # "$(UPDATER)"=="YES"
|
|
|
|
|
.ENDIF # "$(PRODUCT)"=="full"
|
|
|
|
|
.ENDIF # "$(BOTH)"!=""
|
|
|
|
|
.IF "$(COM)"=="GCC"
|
|
|
|
|
@+echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) -o$@ \
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(STDOBJ) $(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ) | tr -d <20>\r\n<EFBFBD> > $(MISC)$/$(@:b).cmd
|
2000-10-06 09:03:01 -05:00
|
|
|
|
@+$(TYPE) $(SHL$(TNR)LIBS) | sed s\#$(ROUT)\#$(PRJ)$/$/$(ROUT)\#g | tr -d <20>\r\n<EFBFBD> >> $(MISC)$/$(@:b).cmd
|
2000-09-20 08:43:26 -05:00
|
|
|
|
@+echo $(SHL$(TNR)STDLIBS) $(STDSHL) $(SHL$(TNR)RES) >> $(MISC)$/$(@:b).cmd
|
|
|
|
|
$(MISC)$/$(@:b).cmd
|
|
|
|
|
.ELSE
|
|
|
|
|
$(LINK) @$(mktmp \
|
|
|
|
|
$(LINKFLAGS) \
|
|
|
|
|
$(LINKFLAGSSHL) \
|
|
|
|
|
$(SHL$(TNR)STACK) $(SHL$(TNR)BASEX) \
|
|
|
|
|
-out:$@ \
|
|
|
|
|
-map:$(MISC)$/$(@:b).map \
|
|
|
|
|
-def:$(SHL$(TNR)DEF) \
|
|
|
|
|
$(USE_$(TNR)IMPLIB) \
|
|
|
|
|
$(STDOBJ) \
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ) $(SHL$(TNR)OBJS) \
|
2000-09-20 08:43:26 -05:00
|
|
|
|
$(SHL$(TNR)LIBS) \
|
|
|
|
|
$(SHL$(TNR)STDLIBS) \
|
|
|
|
|
$(STDSHL) \
|
|
|
|
|
$(SHL$(TNR)LINKRES) \
|
|
|
|
|
)
|
|
|
|
|
.ENDIF # "$(COM)"=="GCC"
|
|
|
|
|
.ELSE # "$(USE_DEFFILE)"!=""
|
|
|
|
|
$(LINK) @$(mktmp $(LINKFLAGS) \
|
|
|
|
|
$(LINKFLAGSSHL) $(SHL$(TNR)BASEX) \
|
|
|
|
|
$(SHL$(TNR)STACK) -out:$(SHL$(TNR)TARGETN) \
|
|
|
|
|
-map:$(MISC)$/$(@:B).map \
|
|
|
|
|
$(LB)$/$(SHL$(TNR)IMPLIB).exp \
|
|
|
|
|
$(STDOBJ) \
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(SHL$(TNR)OBJS) $(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ) \
|
2000-09-20 08:43:26 -05:00
|
|
|
|
$(SHL$(TNR)LIBS) \
|
|
|
|
|
$(SHL$(TNR)STDLIBS) \
|
|
|
|
|
$(STDSHL) \
|
|
|
|
|
$(SHL$(TNR)LINKRES) \
|
|
|
|
|
)
|
|
|
|
|
.IF "$(BOTH)"!=""
|
|
|
|
|
.IF "$(PRODUCT)"=="full"
|
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
|
|
|
|
#
|
|
|
|
|
# product mit debug gelinkt
|
|
|
|
|
#
|
|
|
|
|
$(LINK) @$(mktmp $(LINKFLAGS) \
|
|
|
|
|
$(LINKFLAGSSHL) $(SHL$(TNR)BASEX) \
|
|
|
|
|
/DEBUG /PDB:NONE \
|
|
|
|
|
$(SHL$(TNR)STACK) -out:$(BIN)$/_$(SHL$(TNR)TARGET).dll \
|
|
|
|
|
-map:$(MISC)$/$(@:B).map \
|
|
|
|
|
$(LB)$/$(SHL$(TNR)IMPLIB).exp \
|
|
|
|
|
$(STDOBJ) \
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(SHL$(TNR)OBJS) $(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ) \
|
2000-09-20 08:43:26 -05:00
|
|
|
|
$(SHL$(TNR)LIBS) \
|
|
|
|
|
$(SHL$(TNR)STDLIBS) \
|
|
|
|
|
$(STDSHL) \
|
|
|
|
|
$(SHL$(TNR)LINKRES) \
|
|
|
|
|
)
|
|
|
|
|
.ENDIF # "$(UPDATER)"=="YES"
|
|
|
|
|
.ENDIF # "$(PRODUCT)"=="full"
|
|
|
|
|
.ENDIF # "$(BOTH)"!=""
|
|
|
|
|
.ENDIF # "$(USE_DEFFILE)"!=""
|
|
|
|
|
.ELSE # "$(linkinc)"==""
|
|
|
|
|
+if exist $(MISC)$/$(SHL$(TNR)TARGET).lnk del $(MISC)$/$(SHL$(TNR)TARGET).lnk
|
|
|
|
|
+if exist $(MISC)$/$(SHL$(TNR)TARGET).lst del $(MISC)$/$(SHL$(TNR)TARGET).lst
|
|
|
|
|
# +if exist $(MISC)$/linkinc.ls del $(MISC)$/linkinc.ls
|
|
|
|
|
+type $(mktmp \
|
|
|
|
|
$(LINKFLAGS) \
|
|
|
|
|
$(LINKFLAGSSHL) $(SHL$(TNR)BASEX) \
|
|
|
|
|
$(SHL$(TNR)STACK) $(MAPFILE) \
|
|
|
|
|
-out:$@ \
|
|
|
|
|
$(LB)$/$(SHL$(TNR)IMPLIB).exp \
|
|
|
|
|
$(STDOBJ) \
|
|
|
|
|
$(SHL$(TNR)OBJS) \
|
|
|
|
|
$(SHL$(TNR)STDLIBS) \
|
|
|
|
|
$(STDSHL) \
|
|
|
|
|
$(SHL$(TNR)LINKRES) \
|
|
|
|
|
) >> $(MISC)$/$(SHL$(TNR)TARGET).lnk
|
|
|
|
|
+type $(MISC)$/linkinc.ls >> $(MISC)$/$(SHL$(TNR)TARGET).lnk
|
|
|
|
|
$(LINK) @$(MISC)$/$(SHL$(TNR)TARGET).lnk
|
|
|
|
|
# +if exist $(MISC)$/linkinc.ls del $(MISC)$/linkinc.ls
|
|
|
|
|
.ENDIF # "$(linkinc)"==""
|
|
|
|
|
.ENDIF # "$(GUI)" == "WNT"
|
|
|
|
|
.IF "$(GUI)"=="UNX"
|
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
|
|
|
|
.IF "$(OS)"=="SOLARIS"
|
|
|
|
|
.IF "$(COM)"=="GCC"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(CC) -c -fPIC -o $(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.o -DUNX $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ELSE
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(CC) -c -KPIC -o $(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.o -DUNX $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF
|
|
|
|
|
.ENDIF
|
|
|
|
|
.IF "$(OS)"=="MACOSX"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(CC) -c -dynamic -o $(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.o -DUNX $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF
|
2000-12-06 12:08:11 -06:00
|
|
|
|
.IF "$(OS)"=="LINUX" || "$(OS)"=="NETBSD" || "$(OS)"=="FREEBSD"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(CC) -c -fPIC -o $(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.o -DUNX $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-11-08 11:55:25 -06:00
|
|
|
|
.ENDIF
|
2000-12-06 12:17:15 -06:00
|
|
|
|
.IF "$(OS)"=="IRIX"
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(CC) -o $(SLO)$/{$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}_version.o -DUNX $(ENVCDEFS) -I$(INCCOM) $(SOLARENV)$/src$/version.cxx
|
2000-12-06 12:17:15 -06:00
|
|
|
|
@+if ( ! -e $(SOLARLIBDIR) ) mkdir $(SOLARLIBDIR)
|
|
|
|
|
@+if ( ! -e $(SOLARLIBDIR)/so_locations ) touch $(SOLARLIBDIR)/so_locations
|
|
|
|
|
.ENDIF # "$(OS)"=="IRIX"
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF
|
|
|
|
|
@+-$(RM) $(MISC)$/$(@:b).cmd
|
|
|
|
|
@+echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(SHL$(TNR)VERSIONMAPPARA) -L$(PRJ)$/$(ROUT)$/lib $(SOLARLIB) $(STDSLO) $(SHL$(TNR)OBJS:s/.obj/.o/) \
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ:s/.obj/.o/) -o $@ \
|
2000-10-06 09:03:01 -05:00
|
|
|
|
`cat /dev/null $(SHL$(TNR)LIBS) | tr -s " " "\n" | sed s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
|
2000-09-20 08:43:26 -05:00
|
|
|
|
$(SHL$(TNR)STDLIBS) $(SHL$(TNR)ARCHIVES) $(STDSHL) $(LINKOUTPUT_FILTER) > $(MISC)$/$(@:b).cmd
|
|
|
|
|
@cat $(MISC)$/$(@:b).cmd
|
|
|
|
|
@+source $(MISC)$/$(@:b).cmd
|
|
|
|
|
.IF "$(OS)"=="S390"
|
|
|
|
|
+mv -f ($@:s/$(DLLPOST)/.x/) $(LB)
|
|
|
|
|
.ENDIF
|
|
|
|
|
@ls -l $@
|
|
|
|
|
.IF "$(OS)"=="MACOSX"
|
2000-10-25 21:39:24 -05:00
|
|
|
|
@echo "Making: $@.framework"
|
2000-10-26 15:41:43 -05:00
|
|
|
|
@create-bundle $@
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF
|
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
|
|
|
|
.IF "$(OS)"=="MACOSX"
|
|
|
|
|
+$(SOLARENV)$/bin$/checkdll.sh -L$(LB) $(SOLARLIB) $(SHL$(TNR)TARGETN).framework
|
|
|
|
|
.ELSE
|
|
|
|
|
+$(SOLARENV)$/bin$/checkdll.sh -L$(LB) $(SOLARLIB:s/2.6//) $(SHL$(TNR)TARGETN)
|
|
|
|
|
.ENDIF
|
|
|
|
|
.ENDIF # "$(UPDATER)"=="YES"
|
|
|
|
|
.ENDIF # "$(GUI)" == "UNX"
|
|
|
|
|
.IF "$(GUI)"=="MAC"
|
|
|
|
|
@+-$(RM) $@ $@.xSYM
|
2000-12-21 13:06:32 -06:00
|
|
|
|
$(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(foreach,i,$(shell $(UNIX2MACPATH) $(PRJ)$/$(ROUT)$/lib $(SOLARLIB:s/-L//)) -L"$i") $(shell $(UNIX2MACPATH) $(STDSLO) $(SHL$(TNR)OBJS) `cat /dev/null $(SHL$(TNR)LIBS) | sed s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` $(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ)) $(SHL$(TNR)STDLIBS) $(SHL$(TNR)ARCHIVES) $(STDSHL) $(LINKOUTPUT_FILTER) -o $(shell $(UNIX2MACPATH) $@)
|
2000-09-20 08:43:26 -05:00
|
|
|
|
.ENDIF # "$(GUI)"=="MAC"
|
|
|
|
|
.ENDIF # "$(SHL$(TNR)TARGETN)"!=""
|
|
|
|
|
|
|
|
|
|
# Anweisungen fuer das Linken
|
|
|
|
|
# unroll end
|
|
|
|
|
#######################################################
|
|
|
|
|
|
|
|
|
|
.ENDIF # MULTI_SHL_FLAG
|
|
|
|
|
|
|
|
|
|
#-------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.IF "$(MULTI_SHLIMP_FLAG)"==""
|
|
|
|
|
# MULTITARGET: SHLNIMP --- hier einfuegen
|
|
|
|
|
|
|
|
|
|
$(SHL1IMPLIBN) .NULL : SHL1IMP
|
|
|
|
|
|
|
|
|
|
$(SHL2IMPLIBN) .NULL : SHL2IMP
|
|
|
|
|
|
|
|
|
|
$(SHL3IMPLIBN) .NULL : SHL3IMP
|
|
|
|
|
|
|
|
|
|
$(SHL4IMPLIBN) .NULL : SHL4IMP
|
|
|
|
|
|
|
|
|
|
$(SHL5IMPLIBN) .NULL : SHL5IMP
|
|
|
|
|
|
|
|
|
|
$(SHL6IMPLIBN) .NULL : SHL6IMP
|
|
|
|
|
|
|
|
|
|
$(SHL7IMPLIBN) .NULL : SHL7IMP
|
|
|
|
|
|
|
|
|
|
$(SHL8IMPLIBN) .NULL : SHL8IMP
|
|
|
|
|
|
|
|
|
|
$(SHL9IMPLIBN) .NULL : SHL9IMP
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.IF "$(MULTI_SHLIMP_FLAG)"==""
|
|
|
|
|
|
|
|
|
|
# MULTITARGET: SHLNIMP --- hier einfuegen
|
|
|
|
|
|
|
|
|
|
SHL1IMP SHL2IMP SHL3IMP SHL4IMP SHL5IMP SHL6IMP SHL7IMP SHL8IMP SHL9IMP:
|
|
|
|
|
.IF "$(GUI)" != "MAC"
|
|
|
|
|
@dmake $(SHL$(TNR)IMPLIBN) MULTI_SHLIMP_FLAG=true TNR:=$(TNR) $(MFLAGS) $(CALLMACROS)
|
|
|
|
|
.ELSE
|
|
|
|
|
@dmake "$(SHL$(TNR)IMPLIBN)" MULTI_SHLIMP_FLAG=true TNR:=$(TNR) $(MFLAGS) $(CALLMACROS)
|
|
|
|
|
.ENDIF
|
|
|
|
|
.ELSE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#######################################################
|
|
|
|
|
# Anweisungen fuer das Linken
|
|
|
|
|
# unroll begin
|
|
|
|
|
|
|
|
|
|
.IF "$(SHL$(TNR)IMPLIBN)" != ""
|
|
|
|
|
|
|
|
|
|
.IF "$(UPDATER)"=="YES"
|
|
|
|
|
USELIBDEPN=$(SHL$(TNR)LIBS)
|
|
|
|
|
.ELSE
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
.IF "$(USE_DEFFILE)"!=""
|
|
|
|
|
USE_SHLTARGET=$(SHL$(TNR)TARGETN)
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
.IF "$(GUI)" != "UNX"
|
|
|
|
|
$(SHL$(TNR)IMPLIBN): \
|
|
|
|
|
$(SHL$(TNR)DEF) \
|
|
|
|
|
$(USE_SHLTARGET) \
|
|
|
|
|
$(USELIBDEPN)
|
|
|
|
|
.ELSE
|
|
|
|
|
$(SHL$(TNR)IMPLIBN): \
|
|
|
|
|
$(SHL$(TNR)LIBS)
|
|
|
|
|
.ENDIF
|
|
|
|
|
@echo ------------------------------
|
|
|
|
|
@echo Making: $(SHL$(TNR)IMPLIBN)
|
|
|
|
|
.IF "$(GUI)" == "WNT"
|
|
|
|
|
# bei use_deffile implib von linker erstellt
|
|
|
|
|
.IF "$(USE_DEFFILE)"==""
|
|
|
|
|
$(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL$(TNR)IMPLIBN) \
|
|
|
|
|
-def:$(SHL$(TNR)DEF) )
|
|
|
|
|
.ELSE # "$(GUI)" == "WNT"
|
|
|
|
|
@+if exist $@ $(TOUCH) $@
|
|
|
|
|
@+if not exist $@ echo rebuild $(SHL$(TNR)TARGETN) to get $@
|
|
|
|
|
.ENDIF # "$(GUI)" == "WNT"
|
|
|
|
|
.ELSE
|
|
|
|
|
.IF "$(GUI)" == "WIN" || "$(GUI)" == "OS2"
|
|
|
|
|
.IF "$(USE_DEFFILE)"==""
|
|
|
|
|
$(IMPLIB) $(IMPLIBFLAGS) $@ $(SHL$(TNR)DEF)
|
|
|
|
|
.ELSE
|
|
|
|
|
$(IMPLIB) $(IMPLIBFLAGS) $@ $(SHL$(TNR)TARGETN)
|
|
|
|
|
.ENDIF
|
|
|
|
|
.ELSE
|
|
|
|
|
@echo keine ImportLibs auf Mac und *ix
|
|
|
|
|
@+-$(RM) $@
|
|
|
|
|
@$(TOUCH) $@
|
|
|
|
|
.ENDIF
|
|
|
|
|
.ENDIF
|
|
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
|
# Anweisungen fuer das Linken
|
|
|
|
|
# unroll end
|
|
|
|
|
#######################################################
|
|
|
|
|
|
|
|
|
|
.ENDIF # MULTI_SHLIMP_FLAG
|
|
|
|
|
|
|
|
|
|
#------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|