xref: /trunk/main/forms/util/makefile.mk (revision d2cec6bfcccbb03de355d582f9f736bce1607955)
1#**************************************************************
2#
3#  Licensed to the Apache Software Foundation (ASF) under one
4#  or more contributor license agreements.  See the NOTICE file
5#  distributed with this work for additional information
6#  regarding copyright ownership.  The ASF licenses this file
7#  to you under the Apache License, Version 2.0 (the
8#  "License"); you may not use this file except in compliance
9#  with the License.  You may obtain a copy of the License at
10#
11#    http://www.apache.org/licenses/LICENSE-2.0
12#
13#  Unless required by applicable law or agreed to in writing,
14#  software distributed under the License is distributed on an
15#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16#  KIND, either express or implied.  See the License for the
17#  specific language governing permissions and limitations
18#  under the License.
19#
20#**************************************************************
21
22
23
24PRJ=..
25PRJNAME=forms
26TARGET=frm
27USE_DEFFILE=TRUE
28
29# --- Settings ----------------------------------
30
31.INCLUDE :  settings.mk
32.INCLUDE: $(PRJ)$/makefile.pmk
33
34# --- Library -----------------------------------
35# --- frm ---------------------------------------
36LIB1TARGET=$(SLB)$/forms.lib
37LIB1FILES=\
38        $(SLB)$/common.lib \
39        $(SLB)$/resource.lib \
40        $(SLB)$/component.lib \
41        $(SLB)$/helper.lib \
42        $(SLB)$/solarcomponent.lib  \
43        $(SLB)$/solarcontrol.lib \
44        $(SLB)$/richtext.lib \
45        $(SLB)$/runtime.lib \
46        $(SLB)$/xforms.lib \
47        $(SLB)$/xformssubmit.lib \
48        $(SLB)$/xformsxpath.lib
49
50SHL1TARGET=$(TARGET)$(DLLPOSTFIX)
51
52.IF "$(OS)$(SYSTEM_LIBXML)"=="MACOSXYES"
53# The macOS shared-library link template (tg_shl.mk) always searches
54# $(SOLARLIB) -- which includes /usr/lib -- before any of this makefile's
55# own libs, and the SDK bundles its own older libxml2 under /usr/lib. A
56# plain "-lxml2" (as pulled in by LIBXML2LIB) resolves to that bundled
57# copy instead of the configured --with-system-libxml one, and it is
58# missing symbols (xmlXPathValuePush, xmlXPathValuePop) that xformsxpath
59# needs. Link the intended libxml2 statically by absolute path so the
60# search order can't shadow it and no dylib needs to be bundled.
61# The static archive carries no dependency info (unlike a dylib, which
62# records its own link to libz), so zlib must be linked explicitly here
63# to satisfy libxml2's HTTP/gzip symbols (deflate, inflate, gzopen, ...).
64FORMS_LIBXML2LIB:=$(shell xml2-config --prefix)/lib/libxml2.a $(ZLIB3RDLIB)
65.ELSE
66FORMS_LIBXML2LIB=$(LIBXML2LIB)
67.ENDIF
68
69SHL1STDLIBS= \
70        $(EDITENGLIB) \
71        $(SALLIB) \
72        $(CPPULIB) \
73        $(CPPUHELPERLIB) \
74        $(TOOLSLIB) \
75        $(I18NISOLANGLIB) \
76        $(VCLLIB) \
77        $(SVTOOLLIB) \
78        $(SVLLIB)   \
79        $(TKLIB) \
80        $(SFX2LIB) \
81        $(VOSLIB) \
82        $(UNOTOOLSLIB) \
83        $(COMPHELPERLIB) \
84        $(DBTOOLSLIB) \
85        $(TKLIB) \
86        $(SVXCORELIB) \
87        $(UCBHELPERLIB) \
88        $(FORMS_LIBXML2LIB) \
89        $(ICUUCLIB) \
90        $(ICUINLIB)
91
92SHL1LIBS=$(LIB1TARGET)
93SHL1DEPN=$(LIB1TARGET)  \
94        makefile.mk
95
96
97SHL1VERSIONMAP=$(SOLARENV)/src/component.map
98SHL1DEF=$(MISC)$/$(SHL1TARGET).def
99DEF1NAME=$(SHL1TARGET)
100
101# === .res file ==========================================================
102
103RES1FILELIST=\
104    $(SRS)$/resource.srs \
105
106RESLIB1NAME=$(TARGET)
107RESLIB1SRSFILES=$(RES1FILELIST)
108
109# --- Targets ----------------------------------
110
111.INCLUDE : target.mk
112
113# --- Filter-Datei ---
114
115$(MISC)$/$(SHL1TARGET).flt: makefile.mk
116    @echo ------------------------------
117    @echo __CT                  >$@
118    @echo createRegistryInfo    >>$@
119    @echo queryInterface        >>$@
120    @echo queryAggregation      >>$@
121    @echo NavigationToolBar     >>$@
122    @echo ONavigationBar        >>$@
123
124
125ALLTAR : $(MISC)/frm.component
126
127$(MISC)/frm.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
128        frm.component
129    $(XSLTPROC) --nonet --stringparam uri \
130        '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
131        $(SOLARENV)/bin/createcomponent.xslt frm.component
132