summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2013-04-03 18:49:44 +0200
committerMichael Stahl <mstahl@redhat.com>2013-04-04 17:46:46 +0000
commit368210926b67483a3926a0af1890127ca182e064 (patch)
treee3c0ee0602b096d099d49af789da2b284cbf0685 /solenv
parent1d073a3b48d2d5387992a6868dcdd601b80838b7 (diff)
remove -dylib_file mappings that are not needed anymore
XCode 2.5 (i.e. Mac OSX 10.4 & 10.5) couldn't find the libraries without explicit mapping, but as baseline is now 10.6, this wrapping is no longer necessary Change-Id: I225fc47b9ea4b1fb2b13ba575605cbdebc014fd8 Reviewed-on: https://gerrit.libreoffice.org/3192 Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
Diffstat (limited to 'solenv')
-rw-r--r--solenv/bin/macosx-dylib-link-list.pl84
-rw-r--r--solenv/gbuild/platform/macosx.mk19
2 files changed, 3 insertions, 100 deletions
diff --git a/solenv/bin/macosx-dylib-link-list.pl b/solenv/bin/macosx-dylib-link-list.pl
deleted file mode 100644
index 97458e431523..000000000000
--- a/solenv/bin/macosx-dylib-link-list.pl
+++ /dev/null
@@ -1,84 +0,0 @@
-#
-# 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/.
-#
-# This file incorporates work covered by the following license notice:
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed
-# with this work for additional information regarding copyright
-# ownership. The ASF licenses this file to you under the Apache
-# License, Version 2.0 (the "License"); you may not use this file
-# except in compliance with the License. You may obtain a copy of
-# the License at http://www.apache.org/licenses/LICENSE-2.0 .
-#
-
-use lib ("$ENV{SOLARENV}/bin/modules");
-use macosxotoolhelper;
-
-sub locate($)
-{
- my ($lib) = @_;
- my $dir;
- foreach $dir (@dirs)
- {
- my $path = "$dir/$lib";
- if (-e $path)
- {
- return $path;
- }
- }
- return;
-}
-
-sub handle($$)
-{
- my ($from, $to) = @_;
- # wrap -dylib_file in -Wl so that hopefully any used tool whatsoever (e.g.,
- # libtool generated from xmlsec1-1.2.6/configure included in
- # libxmlsec/download/xmlsec1-1.2.6.tar.gz:1.3) passes it through to the
- # linker:
- !($from =~ /,/ || $to =~ /,/) or
- die "$from:$to contains commas and cannot go into -Wl";
- print " -Wl,-dylib_file,$from:$to";
- $done{$from} = 1;
- push(@todo, $to) if (grep {$_ eq $to} @todo) == 0;
-}
-
-foreach (@ARGV) { push(@dirs, $1) if /^-L(.*)$/; }
-foreach (@ARGV)
-{
- if (/^-l(.*)$/)
- {
- my $loc = locate("lib$1.dylib");
- handle($1, $loc) if defined $loc && otoolD($loc) =~ m'^(@.+/.+)\n$';
- }
-}
-foreach $file (@todo)
-{
- my $call = "otool -L $file";
- open(IN, "-|", $call) or die "cannot $call";
- while (<IN>)
- {
- if (m'^\s*(@.+/([^/]+)) \(compatibility version \d+\.\d+\.\d+, current version \d+\.\d+\.\d+\)\n$')
- {
- my $full = $1;
- my $loc = locate($2);
- # mapping for PythonFramework in RepositoryExternal.mk
- next if $full =~ m'^\s*@loader_path/(LibreOfficePython.framework/Versions/[^/]+/LibreOfficePython)';
- if (defined $loc)
- {
- handle($full, $loc) unless defined $done{$full};
- }
- else
- {
- die "unknown $full (from $file)";
- }
- }
- }
- close(IN);
-}
-print "\n";
diff --git a/solenv/gbuild/platform/macosx.mk b/solenv/gbuild/platform/macosx.mk
index c6717b0cbdb0..31ad5c0d41b1 100644
--- a/solenv/gbuild/platform/macosx.mk
+++ b/solenv/gbuild/platform/macosx.mk
@@ -133,20 +133,9 @@ $(if $(filter Executable,$(1)),\
$$(call gb_Library_get_layer,$(2)))
endef
-# FIXME the DYLIB_FILE mess is only necessary because
-# solver layout is different from installation layout
define gb_LinkTarget__command_dynamiclink
$(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) && \
- DYLIB_FILE=`$(gb_MKTEMP)` && \
- $(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
- $(if $(filter Executable,$(TARGETTYPE)),$(gb_Executable_TARGETTYPEFLAGS)) \
- $(if $(filter Bundle,$(TARGETTYPE)),$(gb_Bundle_TARGETTYPEFLAGS)) \
- $(if $(filter Library CppunitTest,$(TARGETTYPE)),$(gb_Library_TARGETTYPEFLAGS)) \
- $(if $(filter Library,$(TARGETTYPE)),$(gb_Library_LTOFLAGS)) \
- $(subst \d,$$,$(RPATH)) \
- $(T_LDFLAGS) \
- $(patsubst lib%.dylib,-l%,$(foreach lib,$(LINKED_LIBS),$(call gb_Library_get_filename,$(lib)))) > $${DYLIB_FILE} && \
$(gb_CXX) \
$(if $(filter Executable,$(TARGETTYPE)),$(gb_Executable_TARGETTYPEFLAGS)) \
$(if $(filter Bundle,$(TARGETTYPE)),$(gb_Bundle_TARGETTYPEFLAGS)) \
@@ -163,21 +152,19 @@ $(call gb_Helper_abbreviate_dirs,\
$(foreach object,$(GENCOBJECTS),$(call gb_GenCObject_get_target,$(object))) \
$(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_target,$(object))) \
$(foreach extraobjectlist,$(EXTRAOBJECTLISTS),`cat $(extraobjectlist)`) \
- `cat $${DYLIB_FILE}` \
$(LIBS) \
$(foreach lib,$(LINKED_STATIC_LIBS),$(call gb_StaticLibrary_get_target,$(lib))) \
-o $(if $(SOVERSION),$(1).$(SOVERSION),$(1)) && \
$(if $(SOVERSION),ln -sf $(notdir $(1)).$(SOVERSION) $(1),:) && \
- $(if $(filter Executable,$(TARGETTYPE)), \
- $(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl app \
- $(LAYER) $(1) &&) \
+ $(if $(filter Executable,$(TARGETTYPE)), \
+ $(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl app $(LAYER) $(1) &&) \
$(if $(filter Library Bundle CppunitTest,$(TARGETTYPE)),\
$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl shl $(LAYER) $(if $(SOVERSION),$(1).$(SOVERSION),$(1)) && \
ln -sf $(notdir $(1)) $(basename $(1)).jnilib &&) \
$(if $(MACOSX_CODESIGNING_IDENTITY), \
$(if $(filter Executable,$(TARGETTYPE)), \
codesign --identifier=$(MACOSX_BUNDLE_IDENTIFIER).$(notdir $(1)) --sign $(MACOSX_CODESIGNING_IDENTITY) $(1) &&)) \
- rm -f $${DYLIB_FILE})
+ :)
endef
# parameters: 1-linktarget 2-cobjects 3-cxxobjects