1 # -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
3 # This file is part of the LibreOffice project.
5 # 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/.
9 # This file incorporates work covered by the following license notice:
11 # 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 .
20 # fixes for executables
22 gb_Executable_FILENAMES
:= $(foreach group
,$(gb_Executable_VALIDGROUPS
),\
23 $(foreach exe
,$(gb_Executable_
$(group
)),$(exe
):$(exe
)$(gb_Executable_EXT
)))
25 ifneq (,$(filter-out MACOSX WNT
,$(OS
)))
26 gb_Executable_FILENAMES
:= $(patsubst uno
:uno
,uno
:uno.bin
,$(gb_Executable_FILENAMES
))
28 gb_Executable_FILENAMES
:= $(patsubst unopkg_bin
:unopkg_bin
%,unopkg_bin
:unopkg
$(if
$(filter-out MACOSX
,$(OS
)),.bin
),$(gb_Executable_FILENAMES
))
29 gb_Executable_FILENAMES
:= $(patsubst unopkg_com
:unopkg_com
%,unopkg_com
:unopkg.com
,$(gb_Executable_FILENAMES
))
31 gb_Executable_FILENAMES
:= $(patsubst gengal
:gengal
,gengal
:gengal.bin
,$(gb_Executable_FILENAMES
))
35 gb_Executable_FILENAMES
:= $(patsubst soffice_bin
:soffice_bin
,soffice_bin
:soffice
,$(gb_Executable_FILENAMES
))
37 gb_Executable_FILENAMES
:= $(patsubst soffice_bin
:soffice_bin
%,soffice_bin
:soffice.bin
,$(gb_Executable_FILENAMES
))
40 gb_Executable_FILENAMES
:= $(patsubst soffice_exe
:soffice_exe
%,soffice_exe
:soffice.exe
,$(gb_Executable_FILENAMES
))
41 gb_Executable_FILENAMES
:= $(patsubst soffice_com
:soffice_com
%,soffice_com
:soffice.com
,$(gb_Executable_FILENAMES
))
43 # fixes for .jnilibs on macOS that are not also needed as .dylibs:
45 gb_Library_FILENAMES
:= \
46 $(subst jpipe
:libjpipe.dylib
,jpipe
:libjpipe.jnilib
,$(gb_Library_FILENAMES
))
47 gb_Library_FILENAMES
:= \
48 $(subst juh
:libjuh.dylib
,juh
:libjuh.jnilib
,$(gb_Library_FILENAMES
))
49 gb_Library_FILENAMES
:= \
50 $(subst hsqldb
:libhsqldb.dylib
,hsqldb
:libhsqldb.jnilib
,$(gb_Library_FILENAMES
))
53 # fixes for all the libraries that are named with too much creativity and do
54 # not follow any of the established nameschemes
56 # Make has no support for 'or' clauses in conditionals,
57 # we use a filter expression instead.
58 ifneq (,$(filter SOLARIS GCC
,$(OS
) $(COM
)))
59 gb_Library_FILENAMES
:= $(patsubst cppuhelper
:libcppuhelper
%,cppuhelper
:libuno_cppuhelper
%,$(gb_Library_FILENAMES
))
60 gb_Library_FILENAMES
:= $(patsubst purpenvhelper
:libpurpen
%,purpenvhelper
:libuno_purpen
%,$(gb_Library_FILENAMES
))
61 gb_Library_FILENAMES
:= $(patsubst salhelper
:libsalhelper
%,salhelper
:libuno_salhelper
%,$(gb_Library_FILENAMES
))
64 # libpyuno_wrapper.dylib => pyuno.so
65 gb_Library_FILENAMES
:= $(patsubst pyuno_wrapper
:libpyuno_wrapper.dylib
,pyuno_wrapper
:pyuno.so
,$(gb_Library_FILENAMES
))
67 # libpyuno_wrapper.so => pyuno.so
68 gb_Library_FILENAMES
:= $(patsubst pyuno_wrapper
:libpyuno_wrapper.so
,pyuno_wrapper
:pyuno.so
,$(gb_Library_FILENAMES
))
72 gb_Library_FILENAMES
:= $(patsubst unobootstrapprotector
:libuno
%,unobootstrapprotector
:uno
%,$(gb_Library_FILENAMES
))
73 gb_Library_FILENAMES
:= $(patsubst unoexceptionprotector
:libuno
%,unoexceptionprotector
:uno
%,$(gb_Library_FILENAMES
))
78 gb_Library_FILENAMES
:= $(patsubst z
:z
%,z
:zlib
%,$(gb_Library_FILENAMES
))
79 gb_Library_FILENAMES
:= $(patsubst rdf
:rdf
%,rdf
:librdf
%,$(gb_Library_FILENAMES
))
81 # libpyuno_wrapper.dll => pyuno.pyd
82 gb_Library_FILENAMES
:= $(patsubst pyuno
:pyuno.dll
,pyuno
:pyuno
$(if
$(MSVC_USE_DEBUG_RUNTIME
),_d
).pyd
,$(gb_Library_FILENAMES
))
84 gb_Library_ILIBFILENAMES
:= $(patsubst z
:z
%,z
:zlib
%,$(gb_Library_ILIBFILENAMES
))
86 # these have prefix "lib" instead of "i"
87 gb_Library_LIBLIBFILENAMES
:= \
90 gb_Library_ILIBFILENAMES
:= \
91 $(filter-out $(foreach lib
,$(gb_Library_LIBLIBFILENAMES
),$(lib
):%) \
92 ,$(gb_Library_ILIBFILENAMES
))
93 gb_Library_ILIBFILENAMES
+= \
94 $(foreach lib
,$(gb_Library_LIBLIBFILENAMES
),$(lib
):lib
$(lib
)$(gb_Library_PLAINEXT
))
96 gb_Library_FILENAMES
:= $(filter-out $(foreach lib
,$(gb_Library_LIBLIBFILENAMES
),$(lib
):%),$(gb_Library_FILENAMES
))
97 gb_Library_FILENAMES
+= $(foreach lib
,$(gb_Library_LIBLIBFILENAMES
),$(lib
):lib
$(lib
).dll
)
99 endif # ifeq ($(OS),WNT)
101 gb_Executable_FILENAMES_FOR_BUILD
:= $(subst $(gb_Executable_EXT
),$(gb_Executable_EXT_for_build
),$(gb_Executable_FILENAMES
))
102 gb_Library_FILENAMES_FOR_BUILD
:= $(subst $(gb_Library_PLAINEXT
),$(gb_Library_PLAINEXT_FOR_BUILD
),$(gb_Library_FILENAMES
))
104 # vim: set noet sw=4 ts=4: