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 JagielskiPRJ=..$/..$/..
25*b1cdbd2cSJim Jagielski
26*b1cdbd2cSJim JagielskiPRJNAME=odk
27*b1cdbd2cSJim JagielskiTARGET=unowinreg
28*b1cdbd2cSJim JagielskiENABLE_EXCEPTIONS=TRUE
29*b1cdbd2cSJim Jagielski
30*b1cdbd2cSJim JagielskiNO_DEFAULT_STL=TRUE
31*b1cdbd2cSJim JagielskiNO_BSYMBOLIC=TRUE
32*b1cdbd2cSJim JagielskiUSE_DEFFILE=TRUE
33*b1cdbd2cSJim Jagielski
34*b1cdbd2cSJim Jagielski# --- Settings -----------------------------------------------------
35*b1cdbd2cSJim Jagielski
36*b1cdbd2cSJim Jagielski.INCLUDE :  settings.mk
37*b1cdbd2cSJim Jagielski
38*b1cdbd2cSJim JagielskiJAVA_INCLUDES:= -I$(JAVA_HOME)/include
39*b1cdbd2cSJim Jagielski
40*b1cdbd2cSJim Jagielski# values taken from set_soenv.in
41*b1cdbd2cSJim Jagielski.IF "$(OS)" == "LINUX"
42*b1cdbd2cSJim JagielskiJAVA_INCLUDES+= -I$(JAVA_HOME)/include/linux
43*b1cdbd2cSJim Jagielski.ELIF "$(OS)" == "FREEBSD"
44*b1cdbd2cSJim JagielskiJAVA_INCLUDES+= -I$(JAVA_HOME)/include/freebsd
45*b1cdbd2cSJim JagielskiJAVA_INCLUDES+= -I$(JAVA_HOME)/include/bsd
46*b1cdbd2cSJim JagielskiJAVA_INCLUDES+= -I$(JAVA_HOME)/include/linux
47*b1cdbd2cSJim Jagielski.ELIF "$(OS)" == "NETBSD"
48*b1cdbd2cSJim JagielskiJAVA_INCLUDES+= -I$(JAVA_HOME)/include/netbsd
49*b1cdbd2cSJim Jagielski.ENDIF
50*b1cdbd2cSJim Jagielski
51*b1cdbd2cSJim Jagielski.IF "$(SOLAR_JAVA)"==""
52*b1cdbd2cSJim Jagielskinojava:
53*b1cdbd2cSJim Jagielski	@echo "Not building javaunohelper because Java is disabled"
54*b1cdbd2cSJim Jagielski.ENDIF
55*b1cdbd2cSJim Jagielski
56*b1cdbd2cSJim Jagielski.IF "$(OS)" != "WNT"
57*b1cdbd2cSJim Jagielski
58*b1cdbd2cSJim Jagielski.IF "$(BUILD_UNOWINREG)" == "YES"
59*b1cdbd2cSJim Jagielski
60*b1cdbd2cSJim Jagielski$(BIN)$/unowinreg.dll : unowinreg.cxx
61*b1cdbd2cSJim Jagielski	$(MINGWCXX) -Wall -D_JNI_IMPLEMENTATION_ $(JAVA_INCLUDES) \
62*b1cdbd2cSJim Jagielski		-I$(PRJ)/inc/pch -shared -o $(BIN)$/unowinreg.dll unowinreg.cxx \
63*b1cdbd2cSJim Jagielski	        -Wl,--kill-at -lkernel32 -ladvapi32
64*b1cdbd2cSJim Jagielski	$(MINGWSTRIP) $(BIN)$/unowinreg.dll
65*b1cdbd2cSJim Jagielski
66*b1cdbd2cSJim Jagielski.ELSE
67*b1cdbd2cSJim Jagielski
68*b1cdbd2cSJim Jagielski$(BIN)$/unowinreg.dll : $(SOLARVERSION)$/$(INPATH)$/bin$(UPDMINOREXT)$/unowinreg.dll
69*b1cdbd2cSJim Jagielski	@@-rm -f $@
70*b1cdbd2cSJim Jagielski	$(GNUCOPY) $< $@
71*b1cdbd2cSJim Jagielski
72*b1cdbd2cSJim Jagielski.ENDIF
73*b1cdbd2cSJim Jagielski
74*b1cdbd2cSJim Jagielski.ELSE #  "$(OS)" != "WNT"
75*b1cdbd2cSJim Jagielski# Always build unowinreg.dll on windows
76*b1cdbd2cSJim Jagielski
77*b1cdbd2cSJim Jagielski# --- Files --------------------------------------------------------
78*b1cdbd2cSJim Jagielski
79*b1cdbd2cSJim JagielskiLINKFLAGS+=-MANIFEST:NO
80*b1cdbd2cSJim JagielskiSLOFILES = \
81*b1cdbd2cSJim Jagielski	$(SLO)$/unowinreg.obj
82*b1cdbd2cSJim JagielskiSHL1TARGET=$(TARGET)
83*b1cdbd2cSJim JagielskiSHL1LIBS=$(SLB)$/$(TARGET).lib
84*b1cdbd2cSJim Jagielski
85*b1cdbd2cSJim Jagielski#No default libraries
86*b1cdbd2cSJim JagielskiSTDSHL=
87*b1cdbd2cSJim Jagielski.IF "$(COM)"=="GCC"
88*b1cdbd2cSJim JagielskiSHL1STDLIBS += -lstdc++
89*b1cdbd2cSJim Jagielski.IF "$(MINGW_GCCLIB_EH)"=="YES"
90*b1cdbd2cSJim JagielskiSHL1STDLIBS += -lgcc_eh
91*b1cdbd2cSJim Jagielski.ENDIF
92*b1cdbd2cSJim JagielskiSHL1STDLIBS += -lgcc -lmingw32 -lmoldname -lmsvcrt
93*b1cdbd2cSJim Jagielski.ENDIF
94*b1cdbd2cSJim Jagielski
95*b1cdbd2cSJim JagielskiSHL1STDLIBS +=\
96*b1cdbd2cSJim Jagielski		$(KERNEL32LIB)\
97*b1cdbd2cSJim Jagielski		$(ADVAPI32LIB)
98*b1cdbd2cSJim Jagielski
99*b1cdbd2cSJim JagielskiSHL1DEF=$(MISC)$/$(SHL1TARGET).def
100*b1cdbd2cSJim Jagielski
101*b1cdbd2cSJim JagielskiDEF1NAME=$(SHL1TARGET)
102*b1cdbd2cSJim JagielskiDEF1EXPORTFILE=$(TARGET).dxp
103*b1cdbd2cSJim JagielskiDEF1DES=unowinreg
104*b1cdbd2cSJim Jagielski
105*b1cdbd2cSJim Jagielski.ENDIF #  "$(OS)" != "WNT"
106*b1cdbd2cSJim Jagielski
107*b1cdbd2cSJim Jagielski# --- Targets ------------------------------------------------------
108*b1cdbd2cSJim Jagielski
109*b1cdbd2cSJim Jagielski.INCLUDE :  target.mk
110*b1cdbd2cSJim Jagielski
111