1*cdf0e10cSrcweir#*************************************************************************
2*cdf0e10cSrcweir#
3*cdf0e10cSrcweir# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir#
5*cdf0e10cSrcweir# Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir#
7*cdf0e10cSrcweir# OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir#
9*cdf0e10cSrcweir# This file is part of OpenOffice.org.
10*cdf0e10cSrcweir#
11*cdf0e10cSrcweir# OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir# it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir# only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir#
15*cdf0e10cSrcweir# OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir# but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir# GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir# (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir#
21*cdf0e10cSrcweir# You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir# version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir# <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir# for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir#
26*cdf0e10cSrcweir#*************************************************************************
27*cdf0e10cSrcweirPRJ=..$/..$/..$/..
28*cdf0e10cSrcweir
29*cdf0e10cSrcweirPRJNAME=xmlsecurity
30*cdf0e10cSrcweirTARGET=xmlsecurity-secfit-boot
31*cdf0e10cSrcweirTARGETTYPE=GUI
32*cdf0e10cSrcweir
33*cdf0e10cSrcweirGEN_HID=TRUE
34*cdf0e10cSrcweirAPP2NOSAL=TRUE
35*cdf0e10cSrcweir
36*cdf0e10cSrcweir# --- Settings -----------------------------------------------------------
37*cdf0e10cSrcweirUSE_JAVAVER=TRUE
38*cdf0e10cSrcweir
39*cdf0e10cSrcweir.INCLUDE :  settings.mk
40*cdf0e10cSrcweir
41*cdf0e10cSrcweirVERINFONAME=verinfo
42*cdf0e10cSrcweir
43*cdf0e10cSrcweir.INCLUDE :  target.mk
44*cdf0e10cSrcweir.INCLUDE :	$(PRJ)$/util$/target.pmk
45*cdf0e10cSrcweir
46*cdf0e10cSrcweir# -------------------------------------------------------------------------
47*cdf0e10cSrcweir# --- Targets -------------------------------------------------------------
48*cdf0e10cSrcweir
49*cdf0e10cSrcweirALLTAR : $(BIN)$/boot_services.rdb
50*cdf0e10cSrcweir
51*cdf0e10cSrcweirREGISTERLIBS= \
52*cdf0e10cSrcweir	i18npool.uno$(DLLPOST) \
53*cdf0e10cSrcweir	$(DLLPRE)tk$(DLLPOSTFIX)$(DLLPOST) \
54*cdf0e10cSrcweir	$(DLLPRE)mcnttype$(DLLPOST)
55*cdf0e10cSrcweir
56*cdf0e10cSrcweir#	$(DLLPRE)i18n$(DLLPOSTFIX)$(DLLPOST) \
57*cdf0e10cSrcweir#	$(DLLPRE)i18npool$(DLLPOSTFIX)$(DLLPOST) \
58*cdf0e10cSrcweir#	$(DLLPRE)tk$(DLLPOSTFIX)$(DLLPOST) \
59*cdf0e10cSrcweir#	$(DLLPRE)mcnttype$(DLLPOST)
60*cdf0e10cSrcweir
61*cdf0e10cSrcweir# Additional libraries
62*cdf0e10cSrcweirDLLPRE_NO=
63*cdf0e10cSrcweirREGISTERLIBS+= \
64*cdf0e10cSrcweir	$(DLLPRE_NO)dynamicloader.uno$(DLLPOST) \
65*cdf0e10cSrcweir	$(DLLPRE_NO)namingservice.uno$(DLLPOST) \
66*cdf0e10cSrcweir	$(DLLPRE_NO)bootstrap.uno$(DLLPOST) \
67*cdf0e10cSrcweir	$(DLLPRE)xsec_fw$(DLLPOST) \
68*cdf0e10cSrcweir	$(DLLPRE)xsec_xmlsec$(DLLPOST)
69*cdf0e10cSrcweir
70*cdf0e10cSrcweir.IF "$(GUI)" == "UNX"
71*cdf0e10cSrcweirMY_DLLDIR=$(SOLARLIBDIR)
72*cdf0e10cSrcweirREGISTERLIBS+= \
73*cdf0e10cSrcweir	$(DLLPRE)dtransX11$(DLLPOSTFIX)$(DLLPOST)
74*cdf0e10cSrcweir
75*cdf0e10cSrcweir.ELSE			# "$(GUI)" == "UNX"
76*cdf0e10cSrcweir.IF "$(GUI)"=="WNT"
77*cdf0e10cSrcweir
78*cdf0e10cSrcweirMY_DLLDIR=$(SOLARBINDIR)
79*cdf0e10cSrcweirREGISTERLIBS+= \
80*cdf0e10cSrcweir	$(DLLPRE)sysdtrans$(DLLPOST) \
81*cdf0e10cSrcweir	$(DLLPRE)ftransl$(DLLPOST) \
82*cdf0e10cSrcweir	$(DLLPRE)dnd$(DLLPOST)
83*cdf0e10cSrcweir
84*cdf0e10cSrcweir.ELSE			# "$(GUI)"=="WNT"
85*cdf0e10cSrcweir
86*cdf0e10cSrcweir	@echo "**********************************************************"
87*cdf0e10cSrcweir	@echo "*** unknown platform: don't know which librarys to use ***"
88*cdf0e10cSrcweir	@echo "**********************************************************"
89*cdf0e10cSrcweir	force_dmake_to_error
90*cdf0e10cSrcweir.ENDIF			# "$(GUI)"=="WNT"
91*cdf0e10cSrcweir.ENDIF			# "$(GUI)" == "UNX"
92*cdf0e10cSrcweir
93*cdf0e10cSrcweir.IF "$(SOLAR_JAVA)" != ""
94*cdf0e10cSrcweir.IF "$(JAVANUMVER)" >= "000100040000"
95*cdf0e10cSrcweir# native libraries, which are only necessary, when java shall run within setup
96*cdf0e10cSrcweirREGISTERLIBS_JAVA= \
97*cdf0e10cSrcweir	javavm.uno$(DLLPOST) \
98*cdf0e10cSrcweir	javaloader.uno$(DLLPOST)
99*cdf0e10cSrcweir
100*cdf0e10cSrcweir# add here java components, which shall run with setup
101*cdf0e10cSrcweirREGISTERJARS=\
102*cdf0e10cSrcweir	java_uno_accessbridge.jar
103*cdf0e10cSrcweir#	xsec_jxsec.jar
104*cdf0e10cSrcweir
105*cdf0e10cSrcweir# jar-files, which regcomp needs so that it can use java
106*cdf0e10cSrcweirREGCOMP_JARS=unoil.jar java_uno.jar ridl.jar jurt.jar juh.jar
107*cdf0e10cSrcweir
108*cdf0e10cSrcweir# CLASSPATH, which regcomp needs to be run
109*cdf0e10cSrcweir# $(SOLARLIBDIR) needs to be included in case Java components are registered,
110*cdf0e10cSrcweir# because java_uno.jar needs to find the native java_uno shared library:
111*cdf0e10cSrcweirMY_CLASSPATH_TMP=$(foreach,i,$(REGCOMP_JARS) $(SOLARBINDIR)$/$i)$(PATH_SEPERATOR)$(SOLARLIBDIR)$(PATH_SEPERATOR)$(XCLASSPATH)
112*cdf0e10cSrcweirREGCOMP_CLASSPATH=$(strip $(subst,!,$(PATH_SEPERATOR) $(MY_CLASSPATH_TMP:s/ /!/)))
113*cdf0e10cSrcweir
114*cdf0e10cSrcweir.IF "$(GUI)"!="WNT"
115*cdf0e10cSrcweirDOLLAR_SIGN=\$$
116*cdf0e10cSrcweirMY_JAVA_COMPPATH=file://$(SOLARBINDIR)
117*cdf0e10cSrcweir.IF "$(OS)"=="MACOSX"
118*cdf0e10cSrcweirREGCOMP_ENV=\
119*cdf0e10cSrcweir	setenv CLASSPATH $(REGCOMP_CLASSPATH) && \
120*cdf0e10cSrcweir	setenv DYLD_LIBRARY_PATH $(DYLD_LIBRARY_PATH):$(JDKLIB)
121*cdf0e10cSrcweir.ELSE
122*cdf0e10cSrcweirREGCOMP_ENV=\
123*cdf0e10cSrcweir	setenv CLASSPATH $(REGCOMP_CLASSPATH) && \
124*cdf0e10cSrcweir	setenv LD_LIBRARY_PATH $(LD_LIBRARY_PATH):$(JDKLIB)
125*cdf0e10cSrcweir.ENDIF
126*cdf0e10cSrcweir.ELSE # "$(GUI)" != "WNT"
127*cdf0e10cSrcweir.IF "$(USE_SHELL)" != "4nt"
128*cdf0e10cSrcweirDOLLAR_SIGN=\$$
129*cdf0e10cSrcweirREGCOMP_ENV=\
130*cdf0e10cSrcweir	setenv CLASSPATH "$(strip $(subst,\,/ $(shell @guw.pl echo $(REGCOMP_CLASSPATH))))" && \
131*cdf0e10cSrcweir	setenv PATH "$(PATH):$(JREPATH)"
132*cdf0e10cSrcweirMY_JAVA_COMPPATH=$(strip $(subst,\,/ file:///$(shell @guw.pl echo $(SOLARBINDIR))))
133*cdf0e10cSrcweir.ELSE # "$(USE_SHELL)" != "4nt"
134*cdf0e10cSrcweirDOLLAR_SIGN=$$
135*cdf0e10cSrcweirREGCOMP_ENV=\
136*cdf0e10cSrcweir	set CLASSPATH=$(REGCOMP_CLASSPATH) && \
137*cdf0e10cSrcweir	set PATH=$(PATH);$(JREPATH)
138*cdf0e10cSrcweirMY_JAVA_COMPPATH=$(strip $(subst,\,/ file:///$(SOLARBINDIR)))
139*cdf0e10cSrcweir.ENDIF  # "$(USE_SHELL)" != "4nt"
140*cdf0e10cSrcweir.ENDIF  # "$(GUI)"!="WNT"
141*cdf0e10cSrcweir.ENDIF  # "$(JAVANUMVER)" >= "000100040000"
142*cdf0e10cSrcweir.ENDIF  # "$(SOLAR_JAVA)" != ""
143*cdf0e10cSrcweir
144*cdf0e10cSrcweir$(BIN)$/boot_services.rdb: \
145*cdf0e10cSrcweir		makefile.mk \
146*cdf0e10cSrcweir		$(foreach,i,$(REGISTERLIBS) $(MY_DLLDIR)$/$(i)) \
147*cdf0e10cSrcweir		$(foreach,i,$(REGISTERLIBS_JAVA) $(MY_DLLDIR)$/$(i))
148*cdf0e10cSrcweir	-rm -f $@ $(BIN)$/regcomp.rdb $(BIN)$/boot_services.tmp
149*cdf0e10cSrcweir# register the native libraries
150*cdf0e10cSrcweir	$(REGCOMP) -register -r $(BIN)$/boot_services.tmp -c "$(strip $(REGISTERLIBS))"
151*cdf0e10cSrcweir.IF "$(SOLAR_JAVA)" != ""
152*cdf0e10cSrcweir.IF "$(OS)"!="MACOSX"
153*cdf0e10cSrcweir.IF "$(JAVANUMVER)" >= "000100040000"
154*cdf0e10cSrcweir	$(REGCOMP) -register -r $(BIN)$/boot_services.tmp -c "$(strip $(REGISTERLIBS_JAVA))"
155*cdf0e10cSrcweir# prepare a registry which regcomp can work on (types+java services)
156*cdf0e10cSrcweir	$(REGCOMP) -register -r $(BIN)$/regcomp.rdb -c "$(strip $(REGISTERLIBS_JAVA))"
157*cdf0e10cSrcweir	$(REGMERGE) $(BIN)$/regcomp.rdb / $(SOLARBINDIR)/udkapi.rdb
158*cdf0e10cSrcweir# now do the registration
159*cdf0e10cSrcweir	$(REGCOMP_ENV) && \
160*cdf0e10cSrcweir		$(REGCOMP) -br $(BIN)$/regcomp.rdb 			\
161*cdf0e10cSrcweir			-register					\
162*cdf0e10cSrcweir			-r $(BIN)$/boot_services.tmp 		\
163*cdf0e10cSrcweir			-l com.sun.star.loader.Java2			\
164*cdf0e10cSrcweir			-env:UNO_JAVA_COMPPATH=$(MY_JAVA_COMPPATH)	\
165*cdf0e10cSrcweir			$(foreach,i,$(REGISTERJARS) -c vnd.sun.star.expand:$(DOLLAR_SIGN)UNO_JAVA_COMPPATH/$(i))
166*cdf0e10cSrcweir#			$(foreach,i,$(REGISTERJARS) -c vnd.sun.star.expand:$(DOLLAR_SIGN)UNO_JAVA_COMPPATH/$(i)) -c $(MY_JAVA_COMPPATH)$/xsec_jxsec.jar
167*cdf0e10cSrcweir
168*cdf0e10cSrcweir.ENDIF # "$(JAVANUMVER)" >= "000100040000"
169*cdf0e10cSrcweir.ENDIF # "$(OS)" != "MACOSX"
170*cdf0e10cSrcweir.ENDIF #  "$(SOLAR_JAVA)" != ""
171*cdf0e10cSrcweir# to have a transaction, move it now to the final name
172*cdf0e10cSrcweir	$(REGMERGE) $(BIN)$/boot_services.tmp / $(SOLARBINDIR)/types.rdb
173*cdf0e10cSrcweir	mv $(BIN)$/boot_services.tmp $@
174*cdf0e10cSrcweir
175