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 ifeq ($(OS
),EMSCRIPTEN
)
38 ifeq ($(ENABLE_QT6
),TRUE
)
39 gb_Executable_FILENAMES
:= $(patsubst soffice_bin
:soffice_bin
%,soffice_bin
:soffice.js
,$(gb_Executable_FILENAMES
))
41 gb_Executable_FILENAMES
:= $(patsubst soffice_bin
:soffice_bin
%,soffice_bin
:soffice.html
,$(gb_Executable_FILENAMES
))
44 gb_Executable_FILENAMES
:= $(patsubst soffice_bin
:soffice_bin
%,soffice_bin
:soffice.bin
,$(gb_Executable_FILENAMES
))
48 gb_Executable_FILENAMES
:= $(patsubst soffice_exe
:soffice_exe
%,soffice_exe
:soffice.exe
,$(gb_Executable_FILENAMES
))
49 gb_Executable_FILENAMES
:= $(patsubst soffice_com
:soffice_com
%,soffice_com
:soffice.com
,$(gb_Executable_FILENAMES
))
51 # fixes for .jnilibs on macOS that are not also needed as .dylibs:
53 gb_Library_FILENAMES
:= \
54 $(subst jpipe
:libjpipe.dylib
,jpipe
:libjpipe.jnilib
,$(gb_Library_FILENAMES
))
55 gb_Library_FILENAMES
:= \
56 $(subst juh
:libjuh.dylib
,juh
:libjuh.jnilib
,$(gb_Library_FILENAMES
))
57 gb_Library_FILENAMES
:= \
58 $(subst hsqldb
:libhsqldb.dylib
,hsqldb
:libhsqldb.jnilib
,$(gb_Library_FILENAMES
))
61 # fixes for all the libraries that are named with too much creativity and do
62 # not follow any of the established nameschemes
64 # Make has no support for 'or' clauses in conditionals,
65 # we use a filter expression instead.
66 ifneq (,$(filter SOLARIS GCC
,$(OS
) $(COM
)))
67 gb_Library_FILENAMES
:= $(patsubst cppuhelper
:libcppuhelper
%,cppuhelper
:libuno_cppuhelper
%,$(gb_Library_FILENAMES
))
68 gb_Library_FILENAMES
:= $(patsubst purpenvhelper
:libpurpen
%,purpenvhelper
:libuno_purpen
%,$(gb_Library_FILENAMES
))
69 gb_Library_FILENAMES
:= $(patsubst salhelper
:libsalhelper
%,salhelper
:libuno_salhelper
%,$(gb_Library_FILENAMES
))
72 # libpyuno_wrapper.dylib => pyuno.so
73 gb_Library_FILENAMES
:= $(patsubst pyuno_wrapper
:libpyuno_wrapper.dylib
,pyuno_wrapper
:pyuno.so
,$(gb_Library_FILENAMES
))
75 # libpyuno_wrapper.so => pyuno.so
76 gb_Library_FILENAMES
:= $(patsubst pyuno_wrapper
:libpyuno_wrapper.so
,pyuno_wrapper
:pyuno.so
,$(gb_Library_FILENAMES
))
80 gb_Library_FILENAMES
:= $(patsubst unobootstrapprotector
:libuno
%,unobootstrapprotector
:uno
%,$(gb_Library_FILENAMES
))
81 gb_Library_FILENAMES
:= $(patsubst unoexceptionprotector
:libuno
%,unoexceptionprotector
:uno
%,$(gb_Library_FILENAMES
))
86 gb_Library_FILENAMES
:= $(patsubst z
:z
%,z
:zlib
%,$(gb_Library_FILENAMES
))
87 gb_Library_FILENAMES
:= $(patsubst rdf
:rdf
%,rdf
:librdf
%,$(gb_Library_FILENAMES
))
89 # libpyuno_wrapper.dll => pyuno.pyd
90 gb_Library_FILENAMES
:= $(patsubst pyuno
:pyuno.dll
,pyuno
:pyuno
$(if
$(MSVC_USE_DEBUG_RUNTIME
),_d
).pyd
,$(gb_Library_FILENAMES
))
92 gb_Library_ILIBFILENAMES
:= $(patsubst z
:z
%,z
:zlib
%,$(gb_Library_ILIBFILENAMES
))
94 # these have prefix "lib" instead of "i"
95 gb_Library_LIBLIBFILENAMES
:= \
98 gb_Library_ILIBFILENAMES
:= \
99 $(filter-out $(foreach lib
,$(gb_Library_LIBLIBFILENAMES
),$(lib
):%) \
100 ,$(gb_Library_ILIBFILENAMES
))
101 gb_Library_ILIBFILENAMES
+= \
102 $(foreach lib
,$(gb_Library_LIBLIBFILENAMES
),$(lib
):lib
$(lib
)$(gb_Library_PLAINEXT
))
104 gb_Library_FILENAMES
:= $(filter-out $(foreach lib
,$(gb_Library_LIBLIBFILENAMES
),$(lib
):%),$(gb_Library_FILENAMES
))
105 gb_Library_FILENAMES
+= $(foreach lib
,$(gb_Library_LIBLIBFILENAMES
),$(lib
):lib
$(lib
).dll
)
107 endif # ifeq ($(OS),WNT)
109 gb_Executable_FILENAMES_FOR_BUILD
:= $(subst $(gb_Executable_EXT
),$(gb_Executable_EXT_for_build
),$(gb_Executable_FILENAMES
))
110 gb_Library_FILENAMES_FOR_BUILD
:= $(subst $(gb_Library_PLAINEXT
),$(gb_Library_PLAINEXT_FOR_BUILD
),$(gb_Library_FILENAMES
))
112 # vim: set noet sw=4 ts=4: