blob: db0a30228409c0e2d9fdab77a04d115bf66fc9f1 [file] [log] [blame]
Takeshi Abeb2bd33e2011-08-10 02:12:48 +09001# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +01002#
Michael Meeks1e4422a2013-05-16 21:56:04 +01003# This file is part of the LibreOffice project.
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +01004#
Michael Meeks1e4422a2013-05-16 21:56:04 +01005# This Source Code Form is subject to the terms of the Mozilla Public
6# License, v. 2.0. If a copy of the MPL was not distributed with this
7# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +01008#
Michael Meeks1e4422a2013-05-16 21:56:04 +01009# This file incorporates work covered by the following license notice:
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +010010#
Michael Meeks1e4422a2013-05-16 21:56:04 +010011# Licensed to the Apache Software Foundation (ASF) under one or more
12# contributor license agreements. See the NOTICE file distributed
13# with this work for additional information regarding copyright
14# ownership. The ASF licenses this file to you under the Apache
15# License, Version 2.0 (the "License"); you may not use this file
16# except in compliance with the License. You may obtain a copy of
17# the License at http://www.apache.org/licenses/LICENSE-2.0 .
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +010018#
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +010019
Matúš Kukan944f3a62013-06-14 12:48:20 +020020# fixes for executables
21
22gb_Executable_FILENAMES := $(foreach group,$(gb_Executable_VALIDGROUPS),\
23 $(foreach exe,$(gb_Executable_$(group)),$(exe):$(exe)$(gb_Executable_EXT)))
24
25gb_Executable_FILENAMES := $(patsubst uno:uno,uno:uno.bin,$(gb_Executable_FILENAMES))
Michael Stahl3cd3b512013-09-21 01:34:26 +020026gb_Executable_FILENAMES := $(patsubst unopkg_bin:unopkg_bin%,unopkg_bin:unopkg.bin,$(gb_Executable_FILENAMES))
27gb_Executable_FILENAMES := $(patsubst unopkg_com:unopkg_com%,unopkg_com:unopkg.com,$(gb_Executable_FILENAMES))
28gb_Executable_FILENAMES := $(patsubst crashrep_com:crashrep_com%,crashrep_com:crashrep.com,$(gb_Executable_FILENAMES))
Matúš Kukan9555b5b2013-06-14 12:48:20 +020029gb_Executable_FILENAMES := $(patsubst gengal:gengal,gengal:gengal.bin,$(gb_Executable_FILENAMES))
Matúš Kukan944f3a62013-06-14 12:48:20 +020030
Stephan Bergmann07ec7b12013-09-11 09:05:31 +020031ifeq ($(OS),MACOSX)
Michael Stahl3cd3b512013-09-21 01:34:26 +020032gb_Executable_FILENAMES := $(patsubst soffice_bin:soffice_bin,soffice_bin:soffice,$(gb_Executable_FILENAMES))
33else
34gb_Executable_FILENAMES := $(patsubst soffice_bin:soffice_bin%,soffice_bin:soffice.bin,$(gb_Executable_FILENAMES))
Stephan Bergmann07ec7b12013-09-11 09:05:31 +020035endif
36
Matúš Kukan944f3a62013-06-14 12:48:20 +020037gb_Executable_FILENAMES_FOR_BUILD := $(subst $(gb_Executable_EXT),$(gb_Executable_EXT_for_build),$(gb_Executable_FILENAMES))
38
Stephan Bergmanna382dad2013-09-14 18:08:57 +020039# fixes for .jnilibs on Mac OS X that are not also needed as .dylibs:
40ifeq ($(OS),MACOSX)
41gb_Library_FILENAMES := \
42 $(subst jpipe:libjpipe.dylib,jpipe:libjpipe.jnilib,$(gb_Library_FILENAMES))
43gb_Library_FILENAMES := \
44 $(subst juh:libjuh.dylib,juh:libjuh.jnilib,$(gb_Library_FILENAMES))
45gb_Library_FILENAMES := \
46 $(subst hsqldb:libhsqldb.dylib,hsqldb:libhsqldb.jnilib,$(gb_Library_FILENAMES))
47endif
48
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +010049# fixes for all the libraries that are named with too much creativity and do
50# not follow any of the established nameschemes
51
Francois Tigeotfaae7932011-03-21 23:21:20 +010052# Make has no support for 'or' clauses in conditionals,
53# we use a filter expression instead.
Matúš Kukan43617912011-08-26 16:25:45 +020054ifneq (,$(filter SOLARIS GCC,$(OS) $(COM)))
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +010055gb_Library_FILENAMES := $(patsubst cppuhelper:libcppuhelper%,cppuhelper:libuno_cppuhelper%,$(gb_Library_FILENAMES))
Matúš Kukan051fdda2011-12-17 14:55:08 +010056gb_Library_FILENAMES := $(patsubst purpenvhelper:libpurpen%,purpenvhelper:libuno_purpen%,$(gb_Library_FILENAMES))
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +010057gb_Library_FILENAMES := $(patsubst salhelper:libsalhelper%,salhelper:libuno_salhelper%,$(gb_Library_FILENAMES))
David Ostrovskye16ac692012-05-27 22:50:41 +020058
59ifeq ($(OS),MACOSX)
Stephan Bergmannfa200682012-06-15 16:46:44 +020060# libpyuno_wrapper.dylib => pyuno.so
61gb_Library_FILENAMES := $(patsubst pyuno_wrapper:libpyuno_wrapper.dylib,pyuno_wrapper:pyuno.so,$(gb_Library_FILENAMES))
David Ostrovskye16ac692012-05-27 22:50:41 +020062else
63# libpyuno_wrapper.so => pyuno.so
64gb_Library_FILENAMES := $(patsubst pyuno_wrapper:libpyuno_wrapper.so,pyuno_wrapper:pyuno.so,$(gb_Library_FILENAMES))
65endif
66
Tor Lillqvist31826312012-02-20 11:15:02 +020067ifneq ($(OS),ANDROID)
Caolán McNamara8d7e8a02012-04-13 11:13:19 +010068gb_Library_FILENAMES := $(patsubst unobootstrapprotector:libuno%,unobootstrapprotector:uno%,$(gb_Library_FILENAMES))
Matúš Kukand06a78c2012-02-10 00:16:55 +010069gb_Library_FILENAMES := $(patsubst unoexceptionprotector:libuno%,unoexceptionprotector:uno%,$(gb_Library_FILENAMES))
Tor Lillqvist31826312012-02-20 11:15:02 +020070endif
Bjoern Michaelsen902f9da2011-06-20 13:24:08 +020071endif
Mathias Bauer90485912011-03-16 10:26:30 +010072
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +010073ifeq ($(OS),WNT)
Michael Stahl7ea2d7f2013-09-17 19:50:20 +020074gb_Library_ICU_LIBRARIES := icudt icuuc icuin icutu
75gb_Library_FILENAMES := $(filter-out $(foreach lib,$(gb_Library_ICU_LIBRARIES),$(lib):%),$(gb_Library_FILENAMES))
76gb_Library_FILENAMES += $(foreach lib,$(gb_Library_ICU_LIBRARIES),$(lib):$(lib)$(if $(MSVC_USE_DEBUG_RUNTIME),d)$(ICU_MAJOR).dll)
77gb_Library_FILENAMES := $(patsubst z:z%,z:zlib%,$(gb_Library_FILENAMES))
78gb_Library_FILENAMES := $(patsubst rdf:rdf%,rdf:librdf%,$(gb_Library_FILENAMES))
Mathias Bauer90485912011-03-16 10:26:30 +010079
David Ostrovskye16ac692012-05-27 22:50:41 +020080# libpyuno_wrapper.dll => pyuno.pyd
Michael Stahl7ea2d7f2013-09-17 19:50:20 +020081gb_Library_FILENAMES := $(patsubst pyuno:pyuno.dll,pyuno:pyuno$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd,$(gb_Library_FILENAMES))
David Ostrovskye16ac692012-05-27 22:50:41 +020082
Matúš Kukan43617912011-08-26 16:25:45 +020083ifeq ($(COM),GCC)
Michael Stahl7ea2d7f2013-09-17 19:50:20 +020084gb_Library_ILIBFILENAMES := $(patsubst crypto:icrypto%,crypto:crypto%,$(gb_Library_ILIBFILENAMES))
85gb_Library_ILIBFILENAMES := $(patsubst exslt:iexslt%,exslt:libexslt$(gb_Library_IARCEXT),$(gb_Library_ILIBFILENAMES))
86gb_Library_ILIBFILENAMES := $(patsubst libexttextcat:liblibext%,libexttextcat:libilibext%,$(gb_Library_ILIBFILENAMES))
87gb_Library_ILIBFILENAMES := $(patsubst rdf:irdf%,rdf:librdf.dll$(gb_Library_IARCEXT),$(gb_Library_ILIBFILENAMES))
88gb_Library_ILIBFILENAMES := $(patsubst ssl:issl%,ssl:ssl%,$(gb_Library_ILIBFILENAMES))
89gb_Library_ILIBFILENAMES := $(patsubst xml2:ixml2%,xml2:libxml2$(gb_Library_IARCEXT),$(gb_Library_ILIBFILENAMES))
90gb_Library_ILIBFILENAMES := $(patsubst xslt:ixslt%,xslt:libxslt$(gb_Library_IARCEXT),$(gb_Library_ILIBFILENAMES))
91gb_Library_ILIBFILENAMES := $(patsubst z:iz%,z:zlib%,$(gb_Library_ILIBFILENAMES))
Michael Stahld78b18f2011-04-13 12:44:29 +000092
Tor Lillqvist1780e952011-06-20 23:52:40 +030093# Libraries not provided by mingw(-w64), available only in the Windows
94# SDK. So if these actually are liked with somewhere, we can't
95# cross-compile that module then using MinGW. That needs to be fixed
96# then, and we need to use these libraries through run-time lookup of
97# APIs. Or something.
Norbert Thiebaudddc28b82011-09-30 08:11:10 -050098gb_Library_SDKLIBFILENAMES:=
tono087e9122011-01-05 22:55:15 +090099
Michael Stahl7ea2d7f2013-09-17 19:50:20 +0200100gb_Library_FILENAMES := $(filter-out $(foreach lib,$(gb_Library_SDKLIBFILENAMES),$(lib):%),$(gb_Library_FILENAMES))
101gb_Library_FILENAMES += $(foreach lib,$(gb_Library_SDKLIBFILENAMES),$(lib):$(WINDOWS_SDK_HOME)/lib/$(lib).lib)
tono087e9122011-01-05 22:55:15 +0900102
Michael Stahl7ea2d7f2013-09-17 19:50:20 +0200103gb_Library_FILENAMES := $(patsubst crypto:crypto%,crypto:libeay32%,$(gb_Library_FILENAMES))
104gb_Library_FILENAMES := $(patsubst ssl:ssl%,ssl:ssleay32%,$(gb_Library_FILENAMES))
tono087e9122011-01-05 22:55:15 +0900105
Matúš Kukan43617912011-08-26 16:25:45 +0200106else # $(COM) != GCC
Michael Stahl7ea2d7f2013-09-17 19:50:20 +0200107gb_Library_ILIBFILENAMES := $(patsubst cppunit:icppunit%,cppunit:icppunit_dll%,$(gb_Library_ILIBFILENAMES))
108gb_Library_ILIBFILENAMES := $(patsubst crypto:icrypto%,crypto:libeay32%,$(gb_Library_ILIBFILENAMES))
109gb_Library_ILIBFILENAMES := $(patsubst crypto:libcrypto%,crypto:libcrypto_static%,$(gb_Library_ILIBFILENAMES))
110gb_Library_ILIBFILENAMES := $(patsubst ssl:issl%,ssl:ssleay32%,$(gb_Library_ILIBFILENAMES))
111gb_Library_ILIBFILENAMES := $(patsubst ssl:libssl%,ssl:libssl_static%,$(gb_Library_ILIBFILENAMES))
112gb_Library_ILIBFILENAMES := $(patsubst xmlsec1:ixmlsec1%,xmlsec1:libxmlsec%,$(gb_Library_ILIBFILENAMES))
113gb_Library_ILIBFILENAMES := $(patsubst xmlsec1-mscrypto:ixmlsec1-mscrypto%,xmlsec1-mscrypto:libxmlsec-mscrypto%,$(gb_Library_ILIBFILENAMES))
114gb_Library_ILIBFILENAMES := $(patsubst xmlsec1-nss:ixmlsec1-nss%,xmlsec1-nss:libxmlsec-nss%,$(gb_Library_ILIBFILENAMES))
115gb_Library_ILIBFILENAMES := $(patsubst z:z%,z:zlib%,$(gb_Library_ILIBFILENAMES))
Bjoern Michaelsen6f0d3f22011-06-18 14:12:16 +0200116
Mathias Bauer90485912011-03-16 10:26:30 +0100117
Michael Stahl4811c2d2013-04-14 13:52:56 +0200118gb_Library_NOILIBFILENAMES_D := \
Khaled Hosny1733e4a2013-05-13 19:52:39 +0200119 icudt icuin icuuc \
Michael Stahl4811c2d2013-04-14 13:52:56 +0200120 lcms2 \
121
Mathias Bauer90485912011-03-16 10:26:30 +0100122# change the names of all import libraries that don't have an "i" prefix as in our standard naming schema
Michael Stahldc397aae2012-09-28 15:31:46 +0200123gb_Library_NOILIBFILENAMES := \
Eike Rathke15b95b22012-08-06 19:23:09 +0200124 langtag \
Michael Stahl01df12e2013-04-09 12:33:46 +0200125 lpsolve55 \
Andras Timar06ec1c02012-11-11 18:24:14 +0100126 xpcom \
127 xpcom_core \
Caolán McNamaracebaf592011-08-16 13:32:51 +0100128 nspr4 \
129 nss3 \
Stephan Bergmann066cf162012-08-13 11:46:21 +0200130 smime3 \
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +0100131
Michael Stahl01df12e2013-04-09 12:33:46 +0200132# these have prefix "lib" instead of "i"
133gb_Library_LIBLIBFILENAMES := \
134 curl \
135 exslt \
136 rdf \
137 xml2 \
138 xslt \
139
Michael Stahl7ea2d7f2013-09-17 19:50:20 +0200140gb_Library_ILIBFILENAMES := \
Michael Stahl01df12e2013-04-09 12:33:46 +0200141 $(filter-out $(foreach lib,$(gb_Library_NOILIBFILENAMES),$(lib):%) \
Michael Stahl4811c2d2013-04-14 13:52:56 +0200142 $(foreach lib,$(gb_Library_NOILIBFILENAMES_D),$(lib):%) \
Michael Stahl01df12e2013-04-09 12:33:46 +0200143 $(foreach lib,$(gb_Library_LIBLIBFILENAMES),$(lib):%) \
Michael Stahl7ea2d7f2013-09-17 19:50:20 +0200144 ,$(gb_Library_ILIBFILENAMES))
145gb_Library_ILIBFILENAMES += \
Michael Stahl01df12e2013-04-09 12:33:46 +0200146 $(foreach lib,$(gb_Library_NOILIBFILENAMES),$(lib):$(lib)$(gb_Library_PLAINEXT)) \
Michael Stahlfaaccdc2013-04-15 19:17:15 +0200147 $(foreach lib,$(gb_Library_NOILIBFILENAMES_D),$(lib):$(lib)$(if $(MSVC_USE_DEBUG_RUNTIME),d)$(gb_Library_PLAINEXT)) \
Michael Stahl01df12e2013-04-09 12:33:46 +0200148 $(foreach lib,$(gb_Library_LIBLIBFILENAMES),$(lib):lib$(lib)$(gb_Library_PLAINEXT))
Mathias Bauer90485912011-03-16 10:26:30 +0100149
Michael Stahl7ea2d7f2013-09-17 19:50:20 +0200150gb_Library_FILENAMES := $(filter-out $(foreach lib,$(gb_Library_LIBLIBFILENAMES),$(lib):%),$(gb_Library_FILENAMES))
151gb_Library_FILENAMES += $(foreach lib,$(gb_Library_LIBLIBFILENAMES),$(lib):lib$(lib).dll)
152gb_Library_FILENAMES := $(patsubst cppunit:cppunit%,cppunit:cppunit$(if $(MSVC_USE_DEBUG_RUNTIME),d)_dll%,$(gb_Library_FILENAMES))
153gb_Library_FILENAMES := $(patsubst crypto:crypto%,crypto:libeay32%,$(gb_Library_FILENAMES))
154gb_Library_FILENAMES := $(patsubst ssl:ssl%,ssl:ssleay32%,$(gb_Library_FILENAMES))
155gb_Library_FILENAMES := $(patsubst fbembed:fbembed%,fbembed:ifbembed%,$(gb_Library_FILENAMES))
156gb_Library_FILENAMES := $(patsubst xmlsec1:xmlsec1%,xmlsec1:libxmlsec%,$(gb_Library_FILENAMES))
157gb_Library_FILENAMES := $(patsubst xmlsec1-mscrypto:xmlsec1-mscrypto%,xmlsec1-mscrypto:libxmlsec-mscrypto%,$(gb_Library_FILENAMES))
158gb_Library_FILENAMES := $(patsubst xmlsec1-nss:xmlsec1-nss%,xmlsec1-nss:libxmlsec-nss%,$(gb_Library_FILENAMES))
159
Matúš Kukan43617912011-08-26 16:25:45 +0200160endif # ifeq ($(COM),GCC)
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +0100161
Mathias Bauer90485912011-03-16 10:26:30 +0100162endif # ifeq ($(OS),WNT)
Bjoern Michaelsen56070c62010-11-13 09:41:56 +0100163
Bjoern Michaelsen549d68a2010-11-11 00:30:49 +0100164# vim: set noet sw=4 ts=4: