зеркало из https://github.com/github/ruby.git
configure.ac: library options to MAINLIBS
* configure.ac (MAINLIBS): moved library options for main program and static libruby, and append MAINLIBS to LIBRUBYARG_STATIC, as these libraries are not needed for linking to shared libruby. [ruby-core:85882] [Bug #14422] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
55d2c5a824
Коммит
bb3db69e2a
33
configure.ac
33
configure.ac
|
@ -18,6 +18,7 @@ AC_DISABLE_OPTION_CHECKING
|
||||||
AC_ARG_VAR([cflags], [additional CFLAGS])
|
AC_ARG_VAR([cflags], [additional CFLAGS])
|
||||||
AC_ARG_VAR([cppflags], [additional CPPFLAGS])
|
AC_ARG_VAR([cppflags], [additional CPPFLAGS])
|
||||||
AC_ARG_VAR([cxxflags], [additional CXXFLAGS])
|
AC_ARG_VAR([cxxflags], [additional CXXFLAGS])
|
||||||
|
ORIG_LIBS=$LIBS
|
||||||
|
|
||||||
{ # environment section
|
{ # environment section
|
||||||
|
|
||||||
|
@ -2245,13 +2246,11 @@ AS_IF([test x"$enable_pthread" = xyes], [
|
||||||
AC_DEFINE(_THREAD_SAFE)
|
AC_DEFINE(_THREAD_SAFE)
|
||||||
AC_DEFINE(HAVE_LIBPTHREAD)
|
AC_DEFINE(HAVE_LIBPTHREAD)
|
||||||
AC_CHECK_HEADERS(pthread_np.h, [], [], [@%:@include <pthread.h>])
|
AC_CHECK_HEADERS(pthread_np.h, [], [], [@%:@include <pthread.h>])
|
||||||
AS_CASE([$pthread_lib],
|
AS_CASE(["$pthread_lib:$target_os"],
|
||||||
[c], [],
|
[c:*], [],
|
||||||
[root], [],
|
[root:*], [],
|
||||||
[c_r], [MAINLIBS="-pthread $MAINLIBS"],
|
[c_r:*|*:openbsd*|*:mirbsd*], [LIBS="-pthread $LIBS"],
|
||||||
[AS_CASE(["$target_os"],
|
[LIBS="-l$pthread_lib $LIBS"])
|
||||||
[openbsd*|mirbsd*], [LIBS="-pthread $LIBS"],
|
|
||||||
[LIBS="-l$pthread_lib $LIBS"])])
|
|
||||||
], [
|
], [
|
||||||
AC_MSG_WARN("Don't know how to find pthread library on your system -- thread support disabled")
|
AC_MSG_WARN("Don't know how to find pthread library on your system -- thread support disabled")
|
||||||
])
|
])
|
||||||
|
@ -2935,7 +2934,7 @@ LIBRUBY_A='lib$(RUBY_SO_NAME)-static.a'
|
||||||
LIBRUBY='$(LIBRUBY_A)'
|
LIBRUBY='$(LIBRUBY_A)'
|
||||||
LIBRUBYARG_STATIC='-l$(RUBY_SO_NAME)-static'
|
LIBRUBYARG_STATIC='-l$(RUBY_SO_NAME)-static'
|
||||||
LIBRUBYARG='$(LIBRUBYARG_STATIC)'
|
LIBRUBYARG='$(LIBRUBYARG_STATIC)'
|
||||||
SOLIBS=
|
SOLIBS='$(MAINLIBS)'
|
||||||
|
|
||||||
AS_CASE(["$target_os"],
|
AS_CASE(["$target_os"],
|
||||||
[cygwin*|mingw*|haiku*|darwin*], [
|
[cygwin*|mingw*|haiku*|darwin*], [
|
||||||
|
@ -2999,9 +2998,6 @@ AS_CASE("$enable_shared", [yes], [
|
||||||
LIBRUBY_RELATIVE=no
|
LIBRUBY_RELATIVE=no
|
||||||
test -z "$CCDLFLAGS" || CFLAGS="$CFLAGS $CCDLFLAGS"
|
test -z "$CCDLFLAGS" || CFLAGS="$CFLAGS $CCDLFLAGS"
|
||||||
ENABLE_SHARED=yes
|
ENABLE_SHARED=yes
|
||||||
AS_IF([test "$rb_cv_binary_elf" = yes], [
|
|
||||||
SOLIBS='$(LIBS)'
|
|
||||||
])
|
|
||||||
|
|
||||||
# libdir can be overridden in config.site file (on OpenSUSE at least).
|
# libdir can be overridden in config.site file (on OpenSUSE at least).
|
||||||
libdir_basename=lib
|
libdir_basename=lib
|
||||||
|
@ -3036,7 +3032,6 @@ AS_CASE("$enable_shared", [yes], [
|
||||||
])
|
])
|
||||||
],
|
],
|
||||||
[freebsd*|dragonfly*], [
|
[freebsd*|dragonfly*], [
|
||||||
SOLIBS='$(LIBS)'
|
|
||||||
LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR)$(MINOR)'
|
LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR)$(MINOR)'
|
||||||
LIBRUBY_SONAME='$(LIBRUBY_SO)'
|
LIBRUBY_SONAME='$(LIBRUBY_SO)'
|
||||||
AS_IF([test "$rb_cv_binary_elf" != "yes" ], [
|
AS_IF([test "$rb_cv_binary_elf" != "yes" ], [
|
||||||
|
@ -3045,7 +3040,6 @@ AS_CASE("$enable_shared", [yes], [
|
||||||
])
|
])
|
||||||
],
|
],
|
||||||
[netbsd*], [
|
[netbsd*], [
|
||||||
SOLIBS='$(LIBS)'
|
|
||||||
LIBRUBY_SONAME='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR)$(MINOR)'
|
LIBRUBY_SONAME='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR)$(MINOR)'
|
||||||
LIBRUBY_SO="${LIBRUBY_SONAME}"'.$(TEENY)'
|
LIBRUBY_SO="${LIBRUBY_SONAME}"'.$(TEENY)'
|
||||||
RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS, ['-Wl,-soname,$(LIBRUBY_SONAME)' "$LDFLAGS_OPTDIR"])
|
RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS, ['-Wl,-soname,$(LIBRUBY_SONAME)' "$LDFLAGS_OPTDIR"])
|
||||||
|
@ -3056,11 +3050,9 @@ AS_CASE("$enable_shared", [yes], [
|
||||||
])
|
])
|
||||||
],
|
],
|
||||||
[openbsd*|mirbsd*], [
|
[openbsd*|mirbsd*], [
|
||||||
SOLIBS='$(LIBS)'
|
|
||||||
LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR).'`expr ${MINOR} \* 10 + ${TEENY}`
|
LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR).'`expr ${MINOR} \* 10 + ${TEENY}`
|
||||||
],
|
],
|
||||||
[solaris*], [
|
[solaris*], [
|
||||||
SOLIBS='$(LIBS)'
|
|
||||||
LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR)'
|
LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR)'
|
||||||
LIBRUBY_SONAME='lib$(RUBY_SO_NAME).$(SOEXT).$(RUBY_PROGRAM_VERSION)'
|
LIBRUBY_SONAME='lib$(RUBY_SO_NAME).$(SOEXT).$(RUBY_PROGRAM_VERSION)'
|
||||||
LIBRUBY_ALIASES='$(LIBRUBY_SONAME) lib$(RUBY_SO_NAME).$(SOEXT)'
|
LIBRUBY_ALIASES='$(LIBRUBY_SONAME) lib$(RUBY_SO_NAME).$(SOEXT)'
|
||||||
|
@ -3078,7 +3070,7 @@ AS_CASE("$enable_shared", [yes], [
|
||||||
[aix*], [
|
[aix*], [
|
||||||
RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS, ["${linker_flag}-bnoentry" "$XLDFLAGS" "$LDFLAGS_OPTDIR"])
|
RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS, ["${linker_flag}-bnoentry" "$XLDFLAGS" "$LDFLAGS_OPTDIR"])
|
||||||
LIBRUBYARG_SHARED='-L${libdir} -l${RUBY_SO_NAME}'
|
LIBRUBYARG_SHARED='-L${libdir} -l${RUBY_SO_NAME}'
|
||||||
SOLIBS='-lm -lc'
|
LIBS="$LIBS -lm -lc"
|
||||||
],
|
],
|
||||||
[darwin*], [
|
[darwin*], [
|
||||||
LIBRUBY_LDSHARED='$(CC) -dynamiclib'
|
LIBRUBY_LDSHARED='$(CC) -dynamiclib'
|
||||||
|
@ -3098,7 +3090,6 @@ AS_CASE("$enable_shared", [yes], [
|
||||||
LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT)'
|
LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT)'
|
||||||
LIBRUBY_SONAME='lib$(RUBY_BASE_NAME).$(RUBY_API_VERSION).$(SOEXT)'
|
LIBRUBY_SONAME='lib$(RUBY_BASE_NAME).$(RUBY_API_VERSION).$(SOEXT)'
|
||||||
LIBRUBY_ALIASES='$(LIBRUBY_SONAME) lib$(RUBY_INSTALL_NAME).$(SOEXT)'
|
LIBRUBY_ALIASES='$(LIBRUBY_SONAME) lib$(RUBY_INSTALL_NAME).$(SOEXT)'
|
||||||
SOLIBS='$(LIBS)'
|
|
||||||
],
|
],
|
||||||
[interix*], [
|
[interix*], [
|
||||||
LIBRUBYARG_SHARED='-L. -L${libdir} -l$(RUBY_SO_NAME)'
|
LIBRUBYARG_SHARED='-L. -L${libdir} -l$(RUBY_SO_NAME)'
|
||||||
|
@ -3341,7 +3332,6 @@ AS_CASE(["$target_os"],
|
||||||
])
|
])
|
||||||
LIBRUBY_ALIASES=''
|
LIBRUBY_ALIASES=''
|
||||||
FIRSTMAKEFILE=GNUmakefile:cygwin/GNUmakefile.in
|
FIRSTMAKEFILE=GNUmakefile:cygwin/GNUmakefile.in
|
||||||
SOLIBS='$(LIBS)'
|
|
||||||
AS_IF([test x"$enable_shared" = xyes], [
|
AS_IF([test x"$enable_shared" = xyes], [
|
||||||
LIBRUBY='lib$(RUBY_SO_NAME).dll.a'
|
LIBRUBY='lib$(RUBY_SO_NAME).dll.a'
|
||||||
], [
|
], [
|
||||||
|
@ -3441,6 +3431,13 @@ AS_IF([test "${universal_binary-no}" = yes ], [
|
||||||
[rb_cv_architecture_available=yes], [rb_cv_architecture_available=no]))
|
[rb_cv_architecture_available=yes], [rb_cv_architecture_available=no]))
|
||||||
])
|
])
|
||||||
|
|
||||||
|
MAINLIBS="$LIBS"
|
||||||
|
LIBS=$ORIG_LIBS
|
||||||
|
AS_IF([test -n "${LIBS}"], [
|
||||||
|
libspat=`echo "${LIBS}" | sed 's/[[][|.*$^]]/\\&/g;s/^ */ /;s/^ *$/ /'`
|
||||||
|
MAINFLAGS=`echo " $MAINLIBS " | sed "s|$libspat"'||;s/^ *//;s/ *$//'`
|
||||||
|
])
|
||||||
|
LIBRUBYARG_STATIC="${LIBRUBYARG_STATIC} \$(MAINLIBS)"
|
||||||
CPPFLAGS="$CPPFLAGS "'$(DEFS)'
|
CPPFLAGS="$CPPFLAGS "'$(DEFS)'
|
||||||
test -z "$CPPFLAGS" || CPPFLAGS="$CPPFLAGS "; CPPFLAGS="$CPPFLAGS"'${cppflags}'
|
test -z "$CPPFLAGS" || CPPFLAGS="$CPPFLAGS "; CPPFLAGS="$CPPFLAGS"'${cppflags}'
|
||||||
AS_IF([test -n "${cflags+set}"], [
|
AS_IF([test -n "${cflags+set}"], [
|
||||||
|
|
|
@ -38,6 +38,7 @@ sitehdrdir=@sitehdrdir@
|
||||||
rubyarchhdrdir=@rubyarchhdrdir@
|
rubyarchhdrdir=@rubyarchhdrdir@
|
||||||
vendorarchhdrdir=@vendorarchhdrdir@
|
vendorarchhdrdir=@vendorarchhdrdir@
|
||||||
sitearchhdrdir=@sitearchhdrdir@
|
sitearchhdrdir=@sitearchhdrdir@
|
||||||
|
MAINLIBS=@MAINLIBS@
|
||||||
SOEXT=@SOEXT@
|
SOEXT=@SOEXT@
|
||||||
LIBPATH=@LIBPATH@
|
LIBPATH=@LIBPATH@
|
||||||
LIBRUBY_A=@LIBRUBY_A@
|
LIBRUBY_A=@LIBRUBY_A@
|
||||||
|
|
|
@ -312,6 +312,7 @@ MJIT_DEBUGFLAGS = $(DEBUGFLAGS)
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
DLDFLAGS = $(LDFLAGS) -dll
|
DLDFLAGS = $(LDFLAGS) -dll
|
||||||
|
MAINLIBS = $(LIBS)
|
||||||
SOLIBS =
|
SOLIBS =
|
||||||
RCFILES = $(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc
|
RCFILES = $(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc
|
||||||
!ifndef RCFLAGS
|
!ifndef RCFLAGS
|
||||||
|
@ -865,7 +866,8 @@ s,@CPPFLAGS@,$(CPPFLAGS),;t t
|
||||||
s,@CXXFLAGS@,$(CXXFLAGS),;t t
|
s,@CXXFLAGS@,$(CXXFLAGS),;t t
|
||||||
s,@FFLAGS@,$(FFLAGS),;t t
|
s,@FFLAGS@,$(FFLAGS),;t t
|
||||||
s,@LDFLAGS@,$(LDFLAGS),;t t
|
s,@LDFLAGS@,$(LDFLAGS),;t t
|
||||||
s,@LIBS@,$(LIBS),;t t
|
s,@LIBS@,,;t t
|
||||||
|
s,@MAINLIBS@,$(MAINLIBS),;t t
|
||||||
s,@exec_prefix@,$${prefix},;t t
|
s,@exec_prefix@,$${prefix},;t t
|
||||||
s,@prefix@,$(prefix),;t t
|
s,@prefix@,$(prefix),;t t
|
||||||
s,@program_transform_name@,s,.*,$(PROGRAM_PREFIX)&$(PROGRAM_SUFFIX),,;t t
|
s,@program_transform_name@,s,.*,$(PROGRAM_PREFIX)&$(PROGRAM_SUFFIX),,;t t
|
||||||
|
@ -953,7 +955,7 @@ s,@LIBRUBY_SO@,$$(RUBY_SO_NAME).dll,;t t
|
||||||
s,@LIBRUBY_ALIASES@,$(LIBRUBY_ALIASES),;t t
|
s,@LIBRUBY_ALIASES@,$(LIBRUBY_ALIASES),;t t
|
||||||
s,@LIBRUBY@,$$(RUBY_SO_NAME).lib,;t t
|
s,@LIBRUBY@,$$(RUBY_SO_NAME).lib,;t t
|
||||||
s,@LIBRUBYARG@,$$(LIBRUBYARG_SHARED),;t t
|
s,@LIBRUBYARG@,$$(LIBRUBYARG_SHARED),;t t
|
||||||
s,@LIBRUBYARG_STATIC@,$$(LIBRUBY_A),;t t
|
s,@LIBRUBYARG_STATIC@,$$(LIBRUBY_A) $$(MAINLIBS),;t t
|
||||||
s,@LIBRUBYARG_SHARED@,$$(LIBRUBY),;t t
|
s,@LIBRUBYARG_SHARED@,$$(LIBRUBY),;t t
|
||||||
s,@SOLIBS@,$(SOLIBS),;t t
|
s,@SOLIBS@,$(SOLIBS),;t t
|
||||||
s,@DLDLIBS@,$(DLDLIBS),;t t
|
s,@DLDLIBS@,$(DLDLIBS),;t t
|
||||||
|
|
Загрузка…
Ссылка в новой задаче