xref: /trunk/main/odk/source/unowinreg/win/makefile.mk (revision 7871dc3e)
1*7871dc3eSAndrew Rist#**************************************************************
2*7871dc3eSAndrew Rist#
3*7871dc3eSAndrew Rist#  Licensed to the Apache Software Foundation (ASF) under one
4*7871dc3eSAndrew Rist#  or more contributor license agreements.  See the NOTICE file
5*7871dc3eSAndrew Rist#  distributed with this work for additional information
6*7871dc3eSAndrew Rist#  regarding copyright ownership.  The ASF licenses this file
7*7871dc3eSAndrew Rist#  to you under the Apache License, Version 2.0 (the
8*7871dc3eSAndrew Rist#  "License"); you may not use this file except in compliance
9*7871dc3eSAndrew Rist#  with the License.  You may obtain a copy of the License at
10*7871dc3eSAndrew Rist#
11*7871dc3eSAndrew Rist#    http://www.apache.org/licenses/LICENSE-2.0
12*7871dc3eSAndrew Rist#
13*7871dc3eSAndrew Rist#  Unless required by applicable law or agreed to in writing,
14*7871dc3eSAndrew Rist#  software distributed under the License is distributed on an
15*7871dc3eSAndrew Rist#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*7871dc3eSAndrew Rist#  KIND, either express or implied.  See the License for the
17*7871dc3eSAndrew Rist#  specific language governing permissions and limitations
18*7871dc3eSAndrew Rist#  under the License.
19*7871dc3eSAndrew Rist#
20*7871dc3eSAndrew Rist#**************************************************************
21*7871dc3eSAndrew Rist
22*7871dc3eSAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweirPRJ=..$/..$/..
25cdf0e10cSrcweir
26cdf0e10cSrcweirPRJNAME=odk
27cdf0e10cSrcweirTARGET=unowinreg
28cdf0e10cSrcweirENABLE_EXCEPTIONS=TRUE
29cdf0e10cSrcweir
30cdf0e10cSrcweirNO_DEFAULT_STL=TRUE
31cdf0e10cSrcweirNO_BSYMBOLIC=TRUE
32cdf0e10cSrcweirUSE_DEFFILE=TRUE
33cdf0e10cSrcweir
34cdf0e10cSrcweir# --- Settings -----------------------------------------------------
35cdf0e10cSrcweir
36cdf0e10cSrcweir.INCLUDE :  settings.mk
37cdf0e10cSrcweir
38cdf0e10cSrcweirJAVA_INCLUDES:= -I$(JAVA_HOME)/include
39cdf0e10cSrcweir
40cdf0e10cSrcweir# values taken from set_soenv.in
41cdf0e10cSrcweir.IF "$(OS)" == "LINUX"
42cdf0e10cSrcweirJAVA_INCLUDES+= -I$(JAVA_HOME)/include/linux
43cdf0e10cSrcweir.ELIF "$(OS)" == "FREEBSD"
44cdf0e10cSrcweirJAVA_INCLUDES+= -I$(JAVA_HOME)/include/freebsd
45cdf0e10cSrcweirJAVA_INCLUDES+= -I$(JAVA_HOME)/include/bsd
46cdf0e10cSrcweirJAVA_INCLUDES+= -I$(JAVA_HOME)/include/linux
47cdf0e10cSrcweir.ELIF "$(OS)" == "NETBSD"
48cdf0e10cSrcweirJAVA_INCLUDES+= -I$(JAVA_HOME)/include/netbsd
49cdf0e10cSrcweir.ENDIF
50cdf0e10cSrcweir
51cdf0e10cSrcweir.IF "$(SOLAR_JAVA)"==""
52cdf0e10cSrcweirnojava:
53cdf0e10cSrcweir	@echo "Not building javaunohelper because Java is disabled"
54cdf0e10cSrcweir.ENDIF
55cdf0e10cSrcweir
56cdf0e10cSrcweir.IF "$(OS)" != "WNT"
57cdf0e10cSrcweir
58cdf0e10cSrcweir.IF "$(BUILD_UNOWINREG)" == "YES"
59cdf0e10cSrcweir
60cdf0e10cSrcweir$(BIN)$/unowinreg.dll : unowinreg.cxx
61cdf0e10cSrcweir	$(MINGWCXX) -Wall -D_JNI_IMPLEMENTATION_ $(JAVA_INCLUDES) \
62cdf0e10cSrcweir		-I$(PRJ)/inc/pch -shared -o $(BIN)$/unowinreg.dll unowinreg.cxx \
63cdf0e10cSrcweir	        -Wl,--kill-at -lkernel32 -ladvapi32
64cdf0e10cSrcweir	$(MINGWSTRIP) $(BIN)$/unowinreg.dll
65cdf0e10cSrcweir
66cdf0e10cSrcweir.ELSE
67cdf0e10cSrcweir
68cdf0e10cSrcweir$(BIN)$/unowinreg.dll : $(SOLARVERSION)$/$(INPATH)$/bin$(UPDMINOREXT)$/unowinreg.dll
69cdf0e10cSrcweir	@@-rm -f $@
70cdf0e10cSrcweir	$(GNUCOPY) $< $@
71cdf0e10cSrcweir
72cdf0e10cSrcweir.ENDIF
73cdf0e10cSrcweir
74cdf0e10cSrcweir.ELSE #  "$(OS)" != "WNT"
75cdf0e10cSrcweir# Always build unowinreg.dll on windows
76cdf0e10cSrcweir
77cdf0e10cSrcweir# --- Files --------------------------------------------------------
78cdf0e10cSrcweir
79cdf0e10cSrcweirLINKFLAGS+=-MANIFEST:NO
80cdf0e10cSrcweirSLOFILES = \
81cdf0e10cSrcweir	$(SLO)$/unowinreg.obj
82cdf0e10cSrcweirSHL1TARGET=$(TARGET)
83cdf0e10cSrcweirSHL1LIBS=$(SLB)$/$(TARGET).lib
84cdf0e10cSrcweir
85cdf0e10cSrcweir#No default libraries
86cdf0e10cSrcweirSTDSHL=
87cdf0e10cSrcweir.IF "$(COM)"=="GCC"
88cdf0e10cSrcweirSHL1STDLIBS += -lstdc++
89cdf0e10cSrcweir.IF "$(MINGW_GCCLIB_EH)"=="YES"
90cdf0e10cSrcweirSHL1STDLIBS += -lgcc_eh
91cdf0e10cSrcweir.ENDIF
92cdf0e10cSrcweirSHL1STDLIBS += -lgcc -lmingw32 -lmoldname -lmsvcrt
93cdf0e10cSrcweir.ENDIF
94cdf0e10cSrcweir
95cdf0e10cSrcweirSHL1STDLIBS +=\
96cdf0e10cSrcweir		$(KERNEL32LIB)\
97cdf0e10cSrcweir		$(ADVAPI32LIB)
98cdf0e10cSrcweir
99cdf0e10cSrcweirSHL1DEF=$(MISC)$/$(SHL1TARGET).def
100cdf0e10cSrcweir
101cdf0e10cSrcweirDEF1NAME=$(SHL1TARGET)
102cdf0e10cSrcweirDEF1EXPORTFILE=$(TARGET).dxp
103cdf0e10cSrcweirDEF1DES=unowinreg
104cdf0e10cSrcweir
105cdf0e10cSrcweir.ENDIF #  "$(OS)" != "WNT"
106cdf0e10cSrcweir
107cdf0e10cSrcweir# --- Targets ------------------------------------------------------
108cdf0e10cSrcweir
109cdf0e10cSrcweir.INCLUDE :  target.mk
110cdf0e10cSrcweir
111