1d028d4783
...as discussed in 371cc81bd9
"external/liborcus:
Fix Linux RPATH:"
* When an external module produces multiple libraries (that we all install) that
depend on each other, they need to contain $ORIGIN in RPATH (strictly
speaking, those that do not depend on any other libraries from the module
would not need that, but it is harmless and easier to do that way).
* When an external module's libraries depend on other external modules'
libraries, and (at least some of) those other external modules are not
configuread as --with-system-*, they need to contain $ORIGIN in RPATH (again,
for simplicity, some libraries may get that even if they would not strictly
need it).
* Try to outsmart the external modules' libtool instances to not add (ultimately
bogus) paths to RPATH for dependencies on libraries from external modules
(either from the same module, or from anohter module not configured as
--with-system-*). The only time we do not outsmart libtool, and instead rely
on it (hopefully?) doing the right thing is when a given external modules'
libraries depend on libraries from excatly one other external module, and the
latter is configured as --with-system-*.
* That outsmarting means that if an external library depends both on external
libraries provided by modules not configured as --with-system-* (so RPATH
contains $ORIGIN, and the outsmarting is not suppressed) and on external
libraries provided by modules configured as --with-system-*: Then if the
latter are in unusual locations on the system that would require an RPATH
entry (which might be provided via the corresponding "pkg-config --libs", say,
and presumably would be honoured by libtool if we did not outsmart it), then
those paths are now erroneously missing from RPATH.
* That outsmarting also causes linking of some utility applications in module
redland to fail, but those are ultimately unused, so cut them off by patching
their respective sub-directory Makefile.in.
Change-Id: Iec05b3568fbcf04987018322c328b769ae4f5dab
35 lines
1.2 KiB
Makefile
35 lines
1.2 KiB
Makefile
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
|
|
#
|
|
# This file is part of the LibreOffice project.
|
|
#
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
#
|
|
|
|
$(eval $(call gb_UnpackedTarball_UnpackedTarball,coinmp))
|
|
|
|
$(eval $(call gb_UnpackedTarball_set_tarball,coinmp,$(COINMP_TARBALL)))
|
|
|
|
$(eval $(call gb_UnpackedTarball_fix_end_of_line,coinmp,\
|
|
CoinMP/MSVisualStudio/v9/CoinMP.sln \
|
|
))
|
|
|
|
$(eval $(call gb_UnpackedTarball_set_patchlevel,coinmp,0))
|
|
|
|
$(eval $(call gb_UnpackedTarball_add_patches,coinmp,\
|
|
external/coinmp/android.build.patch.1 \
|
|
external/coinmp/no-binaries.patch.1 \
|
|
external/coinmp/werror-format-security.patch.0 \
|
|
external/coinmp/werror-undef.patch.0 \
|
|
external/coinmp/coinmp-msvc-disable-sse2.patch.1 \
|
|
$(if $(filter MSC,$(COM)),external/coinmp/windows.build.patch.1 \
|
|
$(if $(filter 120,$(VCVER)),external/coinmp/coinmp-vs2013.patch.1) \
|
|
) \
|
|
$(if $(filter MACOSX,$(OS)),external/coinmp/macosx.build.patch.1) \
|
|
external/coinmp/werror-format-pedantic.patch.0 \
|
|
external/coinmp/ubsan.patch.0 \
|
|
external/coinmp/rpath.patch \
|
|
))
|
|
|
|
# vim: set noet sw=4 ts=4:
|