summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey Yasskin <jyasskin@google.com>2010-02-23 20:53:37 +0000
committerJeffrey Yasskin <jyasskin@google.com>2010-02-23 20:53:37 +0000
commit407fbdd161d4134901fefe267779a4aaaeab2f0d (patch)
tree10889569ea16b2dd7523646ad44c85166abc5687
parentd7283d9c54dbc45d47ee0fbed0fbdcbf0ae74f23 (diff)
downloadllvm-407fbdd161d4134901fefe267779a4aaaeab2f0d.tar.gz
llvm-407fbdd161d4134901fefe267779a4aaaeab2f0d.tar.bz2
llvm-407fbdd161d4134901fefe267779a4aaaeab2f0d.tar.xz
Roll back r96959 again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96981 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--Makefile4
-rw-r--r--Makefile.config.in8
-rw-r--r--Makefile.rules18
-rw-r--r--autoconf/configure.ac16
-rwxr-xr-xconfigure33
-rw-r--r--examples/BrainF/Makefile3
-rw-r--r--examples/Fibonacci/Makefile3
-rw-r--r--examples/HowToUseJIT/Makefile3
-rw-r--r--test/Makefile2
-rw-r--r--test/Unit/lit.cfg9
-rw-r--r--test/Unit/lit.site.cfg.in2
-rw-r--r--tools/llvm-shlib/Makefile67
-rw-r--r--unittests/Makefile.unittest13
13 files changed, 12 insertions, 169 deletions
diff --git a/Makefile b/Makefile
index f76f6b77bd..20395e9470 100644
--- a/Makefile
+++ b/Makefile
@@ -30,8 +30,8 @@ ifeq ($(BUILD_DIRS_ONLY),1)
DIRS := lib/System lib/Support utils
OPTIONAL_DIRS :=
else
- DIRS := lib/System lib/Support utils lib/VMCore lib tools/llvm-shlib \
- tools/llvm-config tools runtime docs unittests
+ DIRS := lib/System lib/Support utils lib/VMCore lib tools/llvm-config \
+ tools runtime docs unittests
OPTIONAL_DIRS := projects bindings
endif
diff --git a/Makefile.config.in b/Makefile.config.in
index d59c81b831..5d8645fef9 100644
--- a/Makefile.config.in
+++ b/Makefile.config.in
@@ -262,11 +262,6 @@ ENABLE_THREADS := @ENABLE_THREADS@
# Do we want to build with position independent code?
ENABLE_PIC := @ENABLE_PIC@
-# Do we want to link the tools shared?
-ifndef ENABLE_SHARED
- ENABLE_SHARED := @ENABLE_SHARED@
-endif
-
# Use -fvisibility-inlines-hidden?
ENABLE_VISIBILITY_INLINES_HIDDEN := @ENABLE_VISIBILITY_INLINES_HIDDEN@
@@ -277,9 +272,6 @@ ENABLE_VISIBILITY_INLINES_HIDDEN := @ENABLE_VISIBILITY_INLINES_HIDDEN@
# Enable JIT for this platform
TARGET_HAS_JIT = @TARGET_HAS_JIT@
-# Environment variable to set to change the runtime shared library search path.
-SHLIBPATH_VAR = @SHLIBPATH_VAR@
-
# Shared library extension for host platform.
SHLIBEXT = @SHLIBEXT@
diff --git a/Makefile.rules b/Makefile.rules
index b5b35256b7..db52985179 100644
--- a/Makefile.rules
+++ b/Makefile.rules
@@ -623,12 +623,11 @@ endif
ifneq ($(HOST_OS),Darwin)
ifneq ($(DARWIN_MAJVERS),4)
ifdef TOOLNAME
- LD.Flags += $(RPATH) -Wl,'$$ORIGIN/../lib'
- ifdef EXAMPLE_TOOL
- LD.Flags += $(RPATH) -Wl,$(ExmplDir) $(RDYNAMIC)
- else
- LD.Flags += $(RPATH) -Wl,$(ToolDir) $(RDYNAMIC)
- endif
+ifdef EXAMPLE_TOOL
+ LD.Flags += $(RPATH) -Wl,$(ExmplDir) $(RDYNAMIC)
+else
+ LD.Flags += $(RPATH) -Wl,$(ToolDir) $(RDYNAMIC)
+endif
endif
endif
endif
@@ -961,16 +960,11 @@ $(LLVM_CONFIG):
$(ToolDir)/$(strip $(TOOLNAME))$(EXEEXT): $(LLVM_CONFIG)
-ifeq ($(ENABLE_SHARED), 1)
-LLVMLibsOptions += -lLLVM-$(LLVMVersion)
-LLVMLibsPaths += $(LibDir)/libLLVM-$(LLVMVersion)$(SHLIBEXT)
-else
LLVMLibsOptions += $(shell $(LLVM_CONFIG) --libs $(LINK_COMPONENTS))
LLVMLibsPaths += $(LLVM_CONFIG) \
$(shell $(LLVM_CONFIG) --libfiles $(LINK_COMPONENTS))
endif
endif
-endif
###############################################################################
# Library Build Rules: Four ways to build a library
@@ -1175,13 +1169,11 @@ endif
# If neither BUILD_ARCHIVE or LOADABLE_MODULE are specified, default to
# building an archive.
#---------------------------------------------------------
-ifndef NO_BUILD_ARCHIVE
ifndef BUILD_ARCHIVE
ifndef LOADABLE_MODULE
BUILD_ARCHIVE = 1
endif
endif
-endif
#---------------------------------------------------------
# Archive Library Targets:
diff --git a/autoconf/configure.ac b/autoconf/configure.ac
index c354411a16..d785c362e2 100644
--- a/autoconf/configure.ac
+++ b/autoconf/configure.ac
@@ -472,18 +472,6 @@ esac
AC_DEFINE_UNQUOTED([ENABLE_PIC],$ENABLE_PIC,
[Define if position independent code is enabled])
-dnl Allow linking tools against the shared library.
-AC_ARG_ENABLE(shared,
- AS_HELP_STRING([--enable-shared],
- [Link LLVM tools shared (default is NO)]),,
- enableval=default)
-case "$enableval" in
- yes) AC_SUBST(ENABLE_SHARED,[1]) ;;
- no) AC_SUBST(ENABLE_SHARED,[0]) ;;
- default) AC_SUBST(ENABLE_SHARED,[0]) ;;
- *) AC_MSG_ERROR([Invalid setting for --enable-shared. Use "yes" or "no"]) ;;
-esac
-
dnl Allow specific targets to be specified for building (or not)
TARGETS_TO_BUILD=""
AC_ARG_ENABLE([targets],AS_HELP_STRING([--enable-targets],
@@ -1348,10 +1336,6 @@ dnl Propagate the shared library extension that the libltdl checks did to
dnl the Makefiles so we can use it there too
AC_SUBST(SHLIBEXT,$libltdl_cv_shlibext)
-dnl Propagate the run-time library path variable that the libltdl
-dnl checks found to the Makefiles so we can use it there too
-AC_SUBST(SHLIBPATH_VAR,$libltdl_cv_shlibpath_var)
-
# Translate the various configuration directories and other basic
# information into substitutions that will end up in Makefile.config.in
# that these configured values can be used by the makefiles
diff --git a/configure b/configure
index 7200ee11ec..574961135b 100755
--- a/configure
+++ b/configure
@@ -689,7 +689,6 @@ TARGET_HAS_JIT
ENABLE_DOXYGEN
ENABLE_THREADS
ENABLE_PIC
-ENABLE_SHARED
TARGETS_TO_BUILD
LLVM_ENUM_TARGETS
LLVM_ENUM_ASM_PRINTERS
@@ -771,7 +770,6 @@ LLVMCC1PLUS
LLVMGCCDIR
LLVMGCC_LANGS
SHLIBEXT
-SHLIBPATH_VAR
LLVM_PREFIX
LLVM_BINDIR
LLVM_LIBDIR
@@ -1404,7 +1402,6 @@ Optional Features:
--enable-threads Use threads if available (default is YES)
--enable-pic Build LLVM with Position Independent Code (default
is YES)
- --enable-shared Link LLVM tools shared (default is NO)
--enable-targets Build specific host targets: all or
target1,target2,... Valid targets are: host, x86,
x86_64, sparc, powerpc, alpha, arm, mips, spu,
@@ -4870,25 +4867,6 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
-# Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then
- enableval=$enable_shared;
-else
- enableval=default
-fi
-
-case "$enableval" in
- yes) ENABLE_SHARED=1
- ;;
- no) ENABLE_SHARED=0
- ;;
- default) ENABLE_SHARED=0
- ;;
- *) { { echo "$as_me:$LINENO: error: Invalid setting for --enable-shared. Use \"yes\" or \"no\"" >&5
-echo "$as_me: error: Invalid setting for --enable-shared. Use \"yes\" or \"no\"" >&2;}
- { (exit 1); exit 1; }; } ;;
-esac
-
TARGETS_TO_BUILD=""
# Check whether --enable-targets was given.
if test "${enable_targets+set}" = set; then
@@ -11132,7 +11110,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 11130 "configure"
+#line 11108 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -19713,9 +19691,6 @@ fi
SHLIBEXT=$libltdl_cv_shlibext
-SHLIBPATH_VAR=$libltdl_cv_shlibpath_var
-
-
# Translate the various configuration directories and other basic
# information into substitutions that will end up in Makefile.config.in
# that these configured values can be used by the makefiles
@@ -20773,7 +20748,6 @@ TARGET_HAS_JIT!$TARGET_HAS_JIT$ac_delim
ENABLE_DOXYGEN!$ENABLE_DOXYGEN$ac_delim
ENABLE_THREADS!$ENABLE_THREADS$ac_delim
ENABLE_PIC!$ENABLE_PIC$ac_delim
-ENABLE_SHARED!$ENABLE_SHARED$ac_delim
TARGETS_TO_BUILD!$TARGETS_TO_BUILD$ac_delim
LLVM_ENUM_TARGETS!$LLVM_ENUM_TARGETS$ac_delim
LLVM_ENUM_ASM_PRINTERS!$LLVM_ENUM_ASM_PRINTERS$ac_delim
@@ -20783,6 +20757,7 @@ ENABLE_CBE_PRINTF_A!$ENABLE_CBE_PRINTF_A$ac_delim
CLANGPATH!$CLANGPATH$ac_delim
CLANGXXPATH!$CLANGXXPATH$ac_delim
ENABLE_BUILT_CLANG!$ENABLE_BUILT_CLANG$ac_delim
+OPTIMIZE_OPTION!$OPTIMIZE_OPTION$ac_delim
_ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -20824,7 +20799,6 @@ _ACEOF
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
cat >conf$$subs.sed <<_ACEOF
-OPTIMIZE_OPTION!$OPTIMIZE_OPTION$ac_delim
EXTRA_OPTIONS!$EXTRA_OPTIONS$ac_delim
BINUTILS_INCDIR!$BINUTILS_INCDIR$ac_delim
ENABLE_LLVMC_DYNAMIC!$ENABLE_LLVMC_DYNAMIC$ac_delim
@@ -20896,7 +20870,6 @@ LLVMCC1PLUS!$LLVMCC1PLUS$ac_delim
LLVMGCCDIR!$LLVMGCCDIR$ac_delim
LLVMGCC_LANGS!$LLVMGCC_LANGS$ac_delim
SHLIBEXT!$SHLIBEXT$ac_delim
-SHLIBPATH_VAR!$SHLIBPATH_VAR$ac_delim
LLVM_PREFIX!$LLVM_PREFIX$ac_delim
LLVM_BINDIR!$LLVM_BINDIR$ac_delim
LLVM_LIBDIR!$LLVM_LIBDIR$ac_delim
@@ -20917,7 +20890,7 @@ LIBOBJS!$LIBOBJS$ac_delim
LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 91; then
+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 89; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/examples/BrainF/Makefile b/examples/BrainF/Makefile
index 2e2cb6d1ae..2c3e066252 100644
--- a/examples/BrainF/Makefile
+++ b/examples/BrainF/Makefile
@@ -9,9 +9,6 @@
LEVEL = ../..
TOOLNAME = BrainF
EXAMPLE_TOOL = 1
-# To keep the shared library working, we link a few of the examples
-# against it unconditionally.
-ENABLE_SHARED = 1
LINK_COMPONENTS := jit bitwriter nativecodegen interpreter
diff --git a/examples/Fibonacci/Makefile b/examples/Fibonacci/Makefile
index d89119add7..71f6ba0ef5 100644
--- a/examples/Fibonacci/Makefile
+++ b/examples/Fibonacci/Makefile
@@ -10,9 +10,6 @@
LEVEL = ../..
TOOLNAME = Fibonacci
EXAMPLE_TOOL = 1
-# To keep the shared library working, we link a few of the examples
-# against it unconditionally.
-ENABLE_SHARED = 1
# Link in JIT support
LINK_COMPONENTS := jit interpreter nativecodegen
diff --git a/examples/HowToUseJIT/Makefile b/examples/HowToUseJIT/Makefile
index c61e9e12b8..c8919db90c 100644
--- a/examples/HowToUseJIT/Makefile
+++ b/examples/HowToUseJIT/Makefile
@@ -9,9 +9,6 @@
LEVEL = ../..
TOOLNAME = HowToUseJIT
EXAMPLE_TOOL = 1
-# To keep the shared library working, we link a few of the examples
-# against it unconditionally.
-ENABLE_SHARED = 1
LINK_COMPONENTS := jit interpreter nativecodegen
diff --git a/test/Makefile b/test/Makefile
index 3750fdb2f1..1ae54f45e3 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -198,6 +198,4 @@ Unit/lit.site.cfg: $(PROJ_OBJ_DIR)/Unit/.dir FORCE
-e "s#@LLVM_TOOLS_DIR@#$(ToolDir)#g" \
-e "s#@LLVMGCCDIR@#$(LLVMGCCDIR)#g" \
-e "s#@LLVM_BUILD_MODE@#$(BuildMode)#g" \
- -e "s#@ENABLE_SHARED@#$(ENABLE_SHARED)#g" \
- -e "s#@SHLIBPATH_VAR@#$(SHLIBPATH_VAR)#g" \
$(PROJ_SRC_DIR)/Unit/lit.site.cfg.in > $@
diff --git a/test/Unit/lit.cfg b/test/Unit/lit.cfg
index 5fe07324a1..34372bb6cb 100644
--- a/test/Unit/lit.cfg
+++ b/test/Unit/lit.cfg
@@ -23,14 +23,7 @@ config.test_format = lit.formats.GoogleTest(llvm_build_mode, 'Tests')
###
-# If necessary, point the dynamic loader at libLLVM.so.
-if config.enable_shared:
- libdir = os.path.join(config.llvm_obj_root, config.llvm_build_mode, 'lib')
- shlibpath = config.environment.get(config.shlibpath_var,'')
- if shlibpath:
- shlibpath = ':' + shlibpath
- shlibpath = libdir + shlibpath
- config.environment[config.shlibpath_var] = shlibpath
+import os
# Check that the object root is known.
if config.test_exec_root is None:
diff --git a/test/Unit/lit.site.cfg.in b/test/Unit/lit.site.cfg.in
index 51b5bc416f..c190ffa68e 100644
--- a/test/Unit/lit.site.cfg.in
+++ b/test/Unit/lit.site.cfg.in
@@ -5,8 +5,6 @@ config.llvm_obj_root = "@LLVM_BINARY_DIR@"
config.llvm_tools_dir = "@LLVM_TOOLS_DIR@"
config.llvmgcc_dir = "@LLVMGCCDIR@"
config.llvm_build_mode = "@LLVM_BUILD_MODE@"
-config.enable_shared = @ENABLE_SHARED@
-config.shlibpath_var = "@SHLIBPATH_VAR@"
# Let the main config do the real work.
lit.load_config(config, "@LLVM_SOURCE_DIR@/test/Unit/lit.cfg")
diff --git a/tools/llvm-shlib/Makefile b/tools/llvm-shlib/Makefile
deleted file mode 100644
index ae0924402b..0000000000
--- a/tools/llvm-shlib/Makefile
+++ /dev/null
@@ -1,67 +0,0 @@
-##===- tools/shlib/Makefile --------------------------------*- Makefile -*-===##
-#
-# The LLVM Compiler Infrastructure
-#
-# This file is distributed under the University of Illinois Open Source
-# License. See LICENSE.TXT for details.
-#
-##===----------------------------------------------------------------------===##
-
-LEVEL = ../..
-LIBRARYNAME = LLVM-$(LLVMVersion)
-
-NO_BUILD_ARCHIVE = 1
-LINK_LIBS_IN_SHARED = 1
-SHARED_LIBRARY = 1
-
-include $(LEVEL)/Makefile.common
-
-# Include all archives in libLLVM.(so|dylib) except the ones that have
-# their own dynamic libraries.
-Archives := $(wildcard $(LibDir)/libLLVM*.a)
-SharedLibraries := $(wildcard $(LibDir)/libLLVM*$(SHLIBEXT))
-IncludeInLibLlvm := $(filter-out $(basename $(SharedLibraries)).a, $(Archives))
-LLVMLibsOptions := $(IncludeInLibLlvm:$(LibDir)/lib%.a=-l%)
-LLVMLibsPaths := $(IncludeInLibLlvm)
-
-$(LibName.SO): $(LLVMLibsPaths)
-
-ifeq ($(HOST_OS),Darwin)
- # set dylib internal version number to llvmCore submission number
- ifdef LLVM_SUBMIT_VERSION
- LLVMLibsOptions := $(LLVMLibsOptions) -Wl,-current_version \
- -Wl,$(LLVM_SUBMIT_VERSION).$(LLVM_SUBMIT_SUBVERSION) \
- -Wl,-compatibility_version -Wl,1
- endif
- # Include everything from the .a's into the shared library.
- LLVMLibsOptions := $(LLVMLibsOptions) -all_load
- # extra options to override libtool defaults
- LLVMLibsOptions := $(LLVMLibsOptions) \
- -avoid-version \
- -Wl,-dead_strip \
- -Wl,-seg1addr -Wl,0xE0000000
-
- # Mac OS X 10.4 and earlier tools do not allow a second -install_name on command line
- DARWIN_VERS := $(shell echo $(TARGET_TRIPLE) | sed 's/.*darwin\([0-9]*\).*/\1/')
- ifneq ($(DARWIN_VERS),8)
- LLVMLibsOptions := $(LLVMLibsOptions) \
- -Wl,-install_name \
- -Wl,"@executable_path/../lib/lib$(LIBRARYNAME)$(SHLIBEXT)"
- endif
-endif
-
-ifeq ($(HOST_OS), Linux)
- # Include everything from the .a's into the shared library.
- LLVMLibsOptions := -Wl,--whole-archive $(LLVMLibsOptions) \
- -Wl,--no-whole-archive
- # Warn if we'll need to modify the text segment when loading libLLVM.so.
- LLVMLibsOptions += -Wl,--warn-shared-textrel
- # Don't allow unresolved symbols.
- LLVMLibsOptions += -Wl,--no-undefined
- ifeq ($(ARCH), ARM)
- # ARM's shared libgcc omits several of the __sync functions that are
- # present in the static libgcc, so we also link in the static gcc. This
- # is described at http://gcc.gnu.org/PR40133.
- LLVMLibsOptions += -lgcc
- endif
-endif
diff --git a/unittests/Makefile.unittest b/unittests/Makefile.unittest
index 9dfb965d38..6fbef54691 100644
--- a/unittests/Makefile.unittest
+++ b/unittests/Makefile.unittest
@@ -28,17 +28,6 @@ CPP.Flags += -I$(LLVM_SRC_ROOT)/utils/unittest/googletest/include/
CPP.Flags += $(NO_VARIADIC_MACROS)
TESTLIBS = -lGoogleTest -lUnitTestMain
-ifeq ($(ENABLE_SHARED), 1)
- # Add the absolute path to the dynamic library. This is ok because
- # we'll never install unittests.
- LD.Flags += $(RPATH) -Wl,$(LibDir)
-endif
-ifeq ($(ENABLE_SHARED), 1)
- # Also set {DYLD,LD}_LIBRARY_PATH because OSX ignores the rpath most
- # of the time.
- Run.Shared := $(SHLIBPATH_VAR)="$(LibDir)$${$(SHLIBPATH_VAR):+:}$$$(SHLIBPATH_VAR)"
-endif
-
$(LLVMUnitTestExe): $(ObjectsO) $(ProjLibsPaths) $(LLVMLibsPaths)
$(Echo) Linking $(BuildMode) unit test $(TESTNAME) $(StripWarnMsg)
$(Verb) $(Link) -o $@ $(TOOLLINKOPTS) $(ObjectsO) $(ProjLibsOptions) \
@@ -49,6 +38,6 @@ $(LLVMUnitTestExe): $(ObjectsO) $(ProjLibsPaths) $(LLVMLibsPaths)
all:: $(LLVMUnitTestExe)
unitcheck:: $(LLVMUnitTestExe)
- $(Run.Shared) $(LLVMUnitTestExe)
+ $(LLVMUnitTestExe)
endif