xref: /aoo4110/main/ucb/source/ucp/webdav/makefile.mk (revision b1cdbd2c)
1*b1cdbd2cSJim Jagielski#**************************************************************
2*b1cdbd2cSJim Jagielski#
3*b1cdbd2cSJim Jagielski#  Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski#  or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski#  distributed with this work for additional information
6*b1cdbd2cSJim Jagielski#  regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski#  to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski#  "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski#  with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski#
11*b1cdbd2cSJim Jagielski#    http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski#
13*b1cdbd2cSJim Jagielski#  Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski#  software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski#  KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski#  specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski#  under the License.
19*b1cdbd2cSJim Jagielski#
20*b1cdbd2cSJim Jagielski#**************************************************************
21*b1cdbd2cSJim Jagielski
22*b1cdbd2cSJim Jagielski
23*b1cdbd2cSJim Jagielski
24*b1cdbd2cSJim Jagielski# UCP Version - Increase, if UCP libraray becomes incompatible.
25*b1cdbd2cSJim JagielskiUCP_VERSION=1
26*b1cdbd2cSJim Jagielski
27*b1cdbd2cSJim Jagielski# Name for the UCP. Will become part of the library name (See below).
28*b1cdbd2cSJim JagielskiUCP_NAME=dav
29*b1cdbd2cSJim Jagielski
30*b1cdbd2cSJim Jagielski# Relative path to project root.
31*b1cdbd2cSJim JagielskiPRJ = ..$/..$/..
32*b1cdbd2cSJim Jagielski
33*b1cdbd2cSJim Jagielski# Project Name.
34*b1cdbd2cSJim JagielskiPRJNAME=ucb
35*b1cdbd2cSJim Jagielski
36*b1cdbd2cSJim JagielskiTARGET=ucp$(UCP_NAME)
37*b1cdbd2cSJim Jagielski
38*b1cdbd2cSJim JagielskiENABLE_EXCEPTIONS=TRUE
39*b1cdbd2cSJim JagielskiUSE_DEFFILE=TRUE
40*b1cdbd2cSJim JagielskiNO_BSYMBOLIC=TRUE
41*b1cdbd2cSJim Jagielski
42*b1cdbd2cSJim Jagielski# --- Settings ---------------------------------------------------------
43*b1cdbd2cSJim Jagielski
44*b1cdbd2cSJim Jagielski.INCLUDE: settings.mk
45*b1cdbd2cSJim Jagielski.IF "$(L10N_framework)"==""
46*b1cdbd2cSJim Jagielski
47*b1cdbd2cSJim JagielskiAPRINCDIR=apr
48*b1cdbd2cSJim JagielskiAPRUTILINCDIR=apr-util
49*b1cdbd2cSJim JagielskiSERFINCDIR=serf
50*b1cdbd2cSJim Jagielski
51*b1cdbd2cSJim Jagielski#
52*b1cdbd2cSJim Jagielski# Extend the list of include paths depending on whether we use locally built
53*b1cdbd2cSJim Jagielski# or system versions of libraries apr, apr-util, serf, libxml
54*b1cdbd2cSJim Jagielski#
55*b1cdbd2cSJim Jagielski# We have to use CFLAGS for this because PRJINC is too inflexible (it adds /inc to everyting.)
56*b1cdbd2cSJim Jagielski#
57*b1cdbd2cSJim Jagielski
58*b1cdbd2cSJim Jagielski.IF "$(SYSTEM_APR)" == "YES"
59*b1cdbd2cSJim JagielskiCFLAGS+= $(APR_CFLAGS)
60*b1cdbd2cSJim JagielskiSHL1STDLIBS+=$(APR_LIBS)
61*b1cdbd2cSJim Jagielski.ELSE
62*b1cdbd2cSJim JagielskiCFLAGS+= -I$(SOLARINCDIR)$/$(APRINCDIR)
63*b1cdbd2cSJim JagielskiSHL1STDLIBS+=$(INTERNAL_APR_LIBS)
64*b1cdbd2cSJim Jagielski.INCLUDE : apr_version.mk
65*b1cdbd2cSJim JagielskiCFLAGS+=\
66*b1cdbd2cSJim Jagielski    -DAPR_VERSION=\"$(APR_MAJOR).$(APR_MINOR).$(APR_MICRO)\"
67*b1cdbd2cSJim Jagielski.ENDIF
68*b1cdbd2cSJim Jagielski
69*b1cdbd2cSJim Jagielski.IF "$(SYSTEM_APR_UTIL)" == "YES"
70*b1cdbd2cSJim JagielskiCFLAGS+= $(APR_UTIL_CFLAGS)
71*b1cdbd2cSJim JagielskiSHL1STDLIBS+=$(APR_UTIL_LIBS)
72*b1cdbd2cSJim Jagielski.ELSE
73*b1cdbd2cSJim JagielskiCFLAGS+= -I$(SOLARINCDIR)$/$(APRUTILINCDIR)
74*b1cdbd2cSJim JagielskiSHL1STDLIBS+=$(INTERNAL_APR_UTIL_LIBS)
75*b1cdbd2cSJim Jagielski.INCLUDE : aprutil_version.mk
76*b1cdbd2cSJim JagielskiCFLAGS+=\
77*b1cdbd2cSJim Jagielski    -DAPR_UTIL_VERSION=\"$(APR_UTIL_MAJOR).$(APR_UTIL_MINOR).$(APR_UTIL_MICRO)\"
78*b1cdbd2cSJim Jagielski.ENDIF
79*b1cdbd2cSJim Jagielski
80*b1cdbd2cSJim Jagielski.IF "$(SYSTEM_SERF)" == "YES"
81*b1cdbd2cSJim JagielskiCFLAGS+= $(SERF_CFLAGS)
82*b1cdbd2cSJim JagielskiSHL1STDLIBS+=$(SERF_LIBS)
83*b1cdbd2cSJim Jagielski.ELSE
84*b1cdbd2cSJim JagielskiCFLAGS+= -I$(SOLARINCDIR)$/$(SERFINCDIR)
85*b1cdbd2cSJim JagielskiSHL1STDLIBS+=$(INTERNAL_SERF_LIBS)
86*b1cdbd2cSJim Jagielski.INCLUDE : serf_version.mk
87*b1cdbd2cSJim JagielskiCFLAGS+=\
88*b1cdbd2cSJim Jagielski    -DSERF_VERSION=\"$(SERF_MAJOR).$(SERF_MINOR).$(SERF_MICRO)\"
89*b1cdbd2cSJim Jagielski.ENDIF
90*b1cdbd2cSJim Jagielski
91*b1cdbd2cSJim Jagielski.IF "$(SYSTEM_LIBXML)" == "YES"
92*b1cdbd2cSJim JagielskiCFLAGS+= $(LIBXML_CFLAGS)
93*b1cdbd2cSJim Jagielski.ELSE
94*b1cdbd2cSJim JagielskiLIBXMLINCDIR=external$/libxml
95*b1cdbd2cSJim JagielskiCFLAGS+= -I$(SOLARINCDIR)$/$(LIBXMLINCDIR)
96*b1cdbd2cSJim Jagielski.ENDIF
97*b1cdbd2cSJim Jagielski
98*b1cdbd2cSJim Jagielski.IF "$(SYSTEM_OPENSSL)" == "YES"
99*b1cdbd2cSJim JagielskiCFLAGS+= -I$(OPENSSL_CFLAGS)
100*b1cdbd2cSJim JagielskiSHL1STDLIBS+= $(OPENSSLLIB)
101*b1cdbd2cSJim Jagielski.ELSE
102*b1cdbd2cSJim JagielskiSHL1STDLIBS+= $(OPENSSLLIBST)
103*b1cdbd2cSJim Jagielski.ENDIF
104*b1cdbd2cSJim Jagielski
105*b1cdbd2cSJim Jagielski# --- General -----------------------------------------------------
106*b1cdbd2cSJim Jagielski
107*b1cdbd2cSJim JagielskiSLOFILES=\
108*b1cdbd2cSJim Jagielski    $(SLO)$/webdavservices.obj \
109*b1cdbd2cSJim Jagielski    $(SLO)$/webdavprovider.obj \
110*b1cdbd2cSJim Jagielski    $(SLO)$/webdavcontent.obj \
111*b1cdbd2cSJim Jagielski    $(SLO)$/webdavcontentcaps.obj \
112*b1cdbd2cSJim Jagielski    $(SLO)$/webdavresultset.obj \
113*b1cdbd2cSJim Jagielski    $(SLO)$/webdavdatasupplier.obj \
114*b1cdbd2cSJim Jagielski    $(SLO)$/ContentProperties.obj \
115*b1cdbd2cSJim Jagielski    $(SLO)$/DAVProperties.obj \
116*b1cdbd2cSJim Jagielski    $(SLO)$/DAVSessionFactory.obj \
117*b1cdbd2cSJim Jagielski    $(SLO)$/DAVResourceAccess.obj \
118*b1cdbd2cSJim Jagielski    $(SLO)$/AprEnv.obj \
119*b1cdbd2cSJim Jagielski    $(SLO)$/webdavresponseparser.obj \
120*b1cdbd2cSJim Jagielski    $(SLO)$/SerfUri.obj \
121*b1cdbd2cSJim Jagielski    $(SLO)$/SerfRequestProcessor.obj \
122*b1cdbd2cSJim Jagielski    $(SLO)$/SerfRequestProcessorImpl.obj \
123*b1cdbd2cSJim Jagielski    $(SLO)$/SerfRequestProcessorImplFac.obj \
124*b1cdbd2cSJim Jagielski    $(SLO)$/SerfPropFindReqProcImpl.obj \
125*b1cdbd2cSJim Jagielski    $(SLO)$/SerfPropPatchReqProcImpl.obj \
126*b1cdbd2cSJim Jagielski    $(SLO)$/SerfGetReqProcImpl.obj \
127*b1cdbd2cSJim Jagielski    $(SLO)$/SerfHeadReqProcImpl.obj \
128*b1cdbd2cSJim Jagielski    $(SLO)$/SerfPutReqProcImpl.obj \
129*b1cdbd2cSJim Jagielski    $(SLO)$/SerfPostReqProcImpl.obj \
130*b1cdbd2cSJim Jagielski    $(SLO)$/SerfDeleteReqProcImpl.obj \
131*b1cdbd2cSJim Jagielski    $(SLO)$/SerfMkColReqProcImpl.obj \
132*b1cdbd2cSJim Jagielski    $(SLO)$/SerfCopyReqProcImpl.obj \
133*b1cdbd2cSJim Jagielski    $(SLO)$/SerfMoveReqProcImpl.obj \
134*b1cdbd2cSJim Jagielski    $(SLO)$/SerfLockReqProcImpl.obj \
135*b1cdbd2cSJim Jagielski    $(SLO)$/SerfLockRefreshProcImpl.obj \
136*b1cdbd2cSJim Jagielski    $(SLO)$/SerfUnlockProcImpl.obj \
137*b1cdbd2cSJim Jagielski    $(SLO)$/SerfLockStore.obj \
138*b1cdbd2cSJim Jagielski    $(SLO)$/SerfSession.obj \
139*b1cdbd2cSJim Jagielski    $(SLO)$/SerfCallbacks.obj \
140*b1cdbd2cSJim Jagielski    $(SLO)$/SerfInputStream.obj \
141*b1cdbd2cSJim Jagielski    $(SLO)$/DateTimeHelper.obj \
142*b1cdbd2cSJim Jagielski    $(SLO)$/UCBDeadPropertyValue.obj
143*b1cdbd2cSJim Jagielski
144*b1cdbd2cSJim JagielskiLIB1TARGET=$(SLB)$/_$(TARGET).lib
145*b1cdbd2cSJim JagielskiLIB1OBJFILES=$(SLOFILES)
146*b1cdbd2cSJim Jagielski
147*b1cdbd2cSJim Jagielski# --- Shared-Library ---------------------------------------------------
148*b1cdbd2cSJim Jagielski
149*b1cdbd2cSJim JagielskiSHL1TARGET=$(TARGET)$(UCP_VERSION)
150*b1cdbd2cSJim JagielskiSHL1IMPLIB=i$(TARGET)
151*b1cdbd2cSJim Jagielski
152*b1cdbd2cSJim JagielskiSHL1VERSIONMAP=$(SOLARENV)/src/component.map
153*b1cdbd2cSJim Jagielski
154*b1cdbd2cSJim JagielskiSHL1STDLIBS+=\
155*b1cdbd2cSJim Jagielski        $(TOOLSLIB) \
156*b1cdbd2cSJim Jagielski        $(CPPUHELPERLIB) \
157*b1cdbd2cSJim Jagielski        $(CPPULIB)       \
158*b1cdbd2cSJim Jagielski        $(SALLIB)        \
159*b1cdbd2cSJim Jagielski        $(SALHELPERLIB)  \
160*b1cdbd2cSJim Jagielski        $(UCBHELPERLIB)  \
161*b1cdbd2cSJim Jagielski        $(COMPHELPERLIB) \
162*b1cdbd2cSJim Jagielski        $(LIBXML2LIB)
163*b1cdbd2cSJim Jagielski
164*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="WNT"
165*b1cdbd2cSJim JagielskiSHL1STDLIBS+= $(WSOCK32LIB)
166*b1cdbd2cSJim Jagielski.IF "$(WINDOWS_VISTA_PSDK)" != ""
167*b1cdbd2cSJim JagielskiSHL1STDLIBS+= $(WS2_32LIB)
168*b1cdbd2cSJim Jagielski.ENDIF
169*b1cdbd2cSJim Jagielski.ELSE # WNT
170*b1cdbd2cSJim Jagielski.IF "$(OS)"=="SOLARIS"
171*b1cdbd2cSJim JagielskiSHL1STDLIBS+= -lnsl -lsocket -ldl
172*b1cdbd2cSJim Jagielski.ENDIF # SOLARIS
173*b1cdbd2cSJim Jagielski.ENDIF # WNT
174*b1cdbd2cSJim Jagielski
175*b1cdbd2cSJim JagielskiSHL1DEF=$(MISC)$/$(SHL1TARGET).def
176*b1cdbd2cSJim JagielskiSHL1LIBS=$(LIB1TARGET)
177*b1cdbd2cSJim Jagielski
178*b1cdbd2cSJim Jagielski# --- Def-File ---------------------------------------------------------
179*b1cdbd2cSJim Jagielski
180*b1cdbd2cSJim JagielskiDEF1NAME=$(SHL1TARGET)
181*b1cdbd2cSJim Jagielski
182*b1cdbd2cSJim Jagielski.ENDIF # L10N_framework
183*b1cdbd2cSJim Jagielski# --- Targets ----------------------------------------------------------
184*b1cdbd2cSJim Jagielski
185*b1cdbd2cSJim Jagielski.INCLUDE: target.mk
186*b1cdbd2cSJim Jagielski
187*b1cdbd2cSJim JagielskiALLTAR : $(MISC)/ucpdav1.component
188*b1cdbd2cSJim Jagielski
189*b1cdbd2cSJim Jagielski$(MISC)/ucpdav1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
190*b1cdbd2cSJim Jagielski        ucpdav1.component
191*b1cdbd2cSJim Jagielski    $(XSLTPROC) --nonet --stringparam uri \
192*b1cdbd2cSJim Jagielski        '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
193*b1cdbd2cSJim Jagielski        $(SOLARENV)/bin/createcomponent.xslt ucpdav1.component
194