pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/lang Fix build problem when PKGSRC_USE_RELRO is not "no".



details:   https://anonhg.NetBSD.org/pkgsrc/rev/c76d9e73ca36
branches:  trunk
changeset: 364885:c76d9e73ca36
user:      taca <taca%pkgsrc.org@localhost>
date:      Thu Jul 06 16:35:05 2017 +0000

description:
Fix build problem when PKGSRC_USE_RELRO is not "no".

* Pass LDFLAGS to LIBRUBY_DLDFLAGS via DLDFLAGS as Ruby 2.4 dose.

diffstat:

 lang/ruby22-base/distinfo                |   4 +-
 lang/ruby22-base/patches/patch-configure |  97 ++++++++++++++++++++++++++++---
 lang/ruby23-base/distinfo                |   4 +-
 lang/ruby23-base/patches/patch-configure |  88 +++++++++++++++++++++++++---
 4 files changed, 167 insertions(+), 26 deletions(-)

diffs (truncated from 357 to 300 lines):

diff -r 4ff5db3dd0bc -r c76d9e73ca36 lang/ruby22-base/distinfo
--- a/lang/ruby22-base/distinfo Thu Jul 06 15:46:37 2017 +0000
+++ b/lang/ruby22-base/distinfo Thu Jul 06 16:35:05 2017 +0000
@@ -1,10 +1,10 @@
-$NetBSD: distinfo,v 1.17 2017/04/09 15:49:50 taca Exp $
+$NetBSD: distinfo,v 1.18 2017/07/06 16:35:05 taca Exp $
 
 SHA1 (ruby-2.2.7.tar.bz2) = 0b5b79f55a1e7a7c2f6600e75167c1b9cc435042
 RMD160 (ruby-2.2.7.tar.bz2) = 5aef4d373a0ea7434b7c32098b43ecc6fba542a6
 SHA512 (ruby-2.2.7.tar.bz2) = 83756cd1c91516962b83961e0de59d858618f7ed3e9795f930aab4f199d47a95ed8f867d8aa9b51d508be26d9babf2140117c88241168bac41e6ef702cfadf20
 Size (ruby-2.2.7.tar.bz2) = 13381078 bytes
-SHA1 (patch-configure) = ad3d1862a48d12b793fd0062eb357372caa19abc
+SHA1 (patch-configure) = fda86ab23ec6291f3a51001793686904d4433b38
 SHA1 (patch-ext_dbm_extconf.rb) = ee932265052613d458375ad1a760a09fefb9d959
 SHA1 (patch-ext_openssl_ossl__ssl.c) = e887a5576959921da116a5cee629c25610169593
 SHA1 (patch-lib_mkmf.rb) = f86f1ae5a1053a0643545a2c11c9fd2bbd5a289d
diff -r 4ff5db3dd0bc -r c76d9e73ca36 lang/ruby22-base/patches/patch-configure
--- a/lang/ruby22-base/patches/patch-configure  Thu Jul 06 15:46:37 2017 +0000
+++ b/lang/ruby22-base/patches/patch-configure  Thu Jul 06 16:35:05 2017 +0000
@@ -1,11 +1,12 @@
-$NetBSD: patch-configure,v 1.4 2016/05/15 14:07:48 taca Exp $
+$NetBSD: patch-configure,v 1.5 2017/07/06 16:35:05 taca Exp $
 
 * Adding Interix support.
 * Ignore doxygen.
+* Pass LDFLAGS to LIBRUBY_DLDFLAGS via DLDFLAGS as Ruby 2.4 dose.
 
---- configure.orig     2016-04-26 04:51:48.000000000 +0000
+--- configure.orig     2017-03-28 07:53:45.000000000 +0000
 +++ configure
-@@ -5579,7 +5579,7 @@ esac
+@@ -5581,7 +5581,7 @@ esac
  else
      if test x"$target_alias" = x; then
        case "$target_os" in #(
@@ -14,7 +15,15 @@
  
            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for real target cpu" >&5
  $as_echo_n "checking for real target cpu... " >&6; }
-@@ -8850,6 +8850,10 @@ esac
+@@ -7456,6 +7456,7 @@ fi
+ 
+ 
+ 
++: ${DLDFLAGS="$LDFLAGS"}
+ 
+ case $RUBY_PATCHLEVEL in #(
+   -*) :
+@@ -8909,6 +8910,10 @@ esac
        LIBS="-lm $LIBS"
                ac_cv_func_round=no
                 ;; #(
@@ -25,7 +34,7 @@
    nacl) :
  
    LIBS="-lm $LIBS"
-@@ -16945,6 +16949,8 @@ else
+@@ -17004,6 +17009,8 @@ else
  # ifdef _MSC_VER
  #  include <malloc.h>
  #  define alloca _alloca
@@ -34,7 +43,7 @@
  # else
  #  ifdef HAVE_ALLOCA_H
  #   include <alloca.h>
-@@ -21234,7 +21240,9 @@ esac ;; #(
+@@ -21293,7 +21300,9 @@ esac ;; #(
    interix*) :
        : ${LDSHARED='$(CC) -shared'}
                        XLDFLAGS="$XLDFLAGS -Wl,-E"
@@ -44,7 +53,26 @@
                        rb_cv_dlopen=yes ;; #(
    freebsd*|dragonfly*) :
  
-@@ -22455,7 +22463,7 @@ esac
+@@ -22503,7 +22512,17 @@ esac
+        ;; #(
+   linux* | gnu* | k*bsd*-gnu | atheos* | kopensolaris*-gnu) :
+ 
+-      LIBRUBY_DLDFLAGS='-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR)'" $LDFLAGS_OPTDIR"
++      # RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS)
++      for rb_opt in '-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR)' "$LDFLAGS_OPTDIR"; do
++      case " ${LIBRUBY_DLDFLAGS-} " in #(
++  *" ${rb_opt} "*) :
++     ;; #(
++  '  ') :
++     LIBRUBY_DLDFLAGS="${rb_opt}" ;; #(
++  *) :
++     LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS ${rb_opt}" ;;
++esac
++      done
+       LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR) lib$(RUBY_SO_NAME).so'
+       if test "$load_relative" = yes; then
+           libprefix="'\$\${ORIGIN}/../${libdir_basename}'"
+@@ -22514,7 +22533,7 @@ esac
    freebsd*|dragonfly*) :
  
        SOLIBS='$(LIBS)'
@@ -53,7 +81,54 @@
        if test "$rb_cv_binary_elf" != "yes" ; then
            LIBRUBY_SO="$LIBRUBY_SO.\$(TEENY)"
            LIBRUBY_ALIASES=''
-@@ -22534,7 +22542,12 @@ esac
+@@ -22524,7 +22543,17 @@ esac
+ 
+       SOLIBS='$(LIBS)'
+       LIBRUBY_SO='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR).$(TEENY)'
+-      LIBRUBY_DLDFLAGS='-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR)'" $LDFLAGS_OPTDIR"
++      # RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS)
++      for rb_opt in '-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR)' "$LDFLAGS_OPTDIR"; do
++      case " ${LIBRUBY_DLDFLAGS-} " in #(
++  *" ${rb_opt} "*) :
++     ;; #(
++  '  ') :
++     LIBRUBY_DLDFLAGS="${rb_opt}" ;; #(
++  *) :
++     LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS ${rb_opt}" ;;
++esac
++      done
+       if test "$rb_cv_binary_elf" = yes; then # ELF platforms
+          LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR) lib$(RUBY_SO_NAME).so'
+       else    # a.out platforms
+@@ -22556,7 +22585,17 @@ esac
+        ;; #(
+   aix*) :
+ 
+-      LIBRUBY_DLDFLAGS="${linker_flag}-bnoentry $XLDFLAGS $LDFLAGS_OPTDIR"
++      # RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS)
++      for rb_opt in "${linker_flag}-bnoentry" "$XLDFLAGS" "$LDFLAGS_OPTDIR"; do
++      case " ${LIBRUBY_DLDFLAGS-} " in #(
++  *" ${rb_opt} "*) :
++     ;; #(
++  '  ') :
++     LIBRUBY_DLDFLAGS="${rb_opt}" ;; #(
++  *) :
++     LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS ${rb_opt}" ;;
++esac
++      done
+       LIBRUBYARG_SHARED='-L${libdir} -l${RUBY_SO_NAME}'
+       SOLIBS='-lm -lc'
+        ;; #(
+@@ -22565,7 +22604,7 @@ esac
+       case "$target_cpu" in #(
+   powerpc*) :
+ 
+-          LIBRUBY_DLDFLAGS="-f ruby.exp -lnet -lbe -lroot glue-noinit.a init_term_dyn.o start_dyn.o $LDFLAGS_OPTDIR"
++          LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS -f ruby.exp -lnet -lbe -lroot glue-noinit.a init_term_dyn.o start_dyn.o $LDFLAGS_OPTDIR"
+            ;; #(
+   *) :
+      ;;
+@@ -22593,7 +22632,12 @@ esac
         ;; #(
    interix*) :
  
@@ -67,7 +142,7 @@
         ;; #(
    mingw*|cygwin*|mswin*) :
  
-@@ -22707,7 +22720,7 @@ if test "$enable_rpath" = yes; then
+@@ -22766,7 +22810,7 @@ if test "$enable_rpath" = yes; then
  esac
      rpathflag=`IFS="$PATH_SEPARATOR"
          echo x "$rpathflag" |
@@ -76,7 +151,7 @@
      `
      LIBRUBY_RPATHFLAGS="$LIBRUBY_RPATHFLAGS${rpathflag}"
      LIBRUBYARG_SHARED="$LIBRUBY_RPATHFLAGS $LIBRUBYARG_SHARED"
-@@ -23026,11 +23039,7 @@ if test "$install_doc" != no; then
+@@ -23085,11 +23129,7 @@ if test "$install_doc" != no; then
      else
        RDOCTARGET="nodoc"
      fi
@@ -89,7 +164,7 @@
  else
      RDOCTARGET="nodoc"
      CAPITARGET="nodoc"
-@@ -25136,17 +25145,7 @@ which seems to be undefined.  Please mak
+@@ -25195,17 +25235,7 @@ which seems to be undefined.  Please mak
      "Makefile":F)
      tmpmk=confmk$$.tmp
      {
diff -r 4ff5db3dd0bc -r c76d9e73ca36 lang/ruby23-base/distinfo
--- a/lang/ruby23-base/distinfo Thu Jul 06 15:46:37 2017 +0000
+++ b/lang/ruby23-base/distinfo Thu Jul 06 16:35:05 2017 +0000
@@ -1,10 +1,10 @@
-$NetBSD: distinfo,v 1.6 2017/04/09 15:57:01 taca Exp $
+$NetBSD: distinfo,v 1.7 2017/07/06 16:35:05 taca Exp $
 
 SHA1 (ruby-2.3.4.tar.bz2) = f5b18e7149ec7620444c91962e695708829d0216
 RMD160 (ruby-2.3.4.tar.bz2) = a44c9f342a401e75c33a2442b9460b2b1ef7f0f5
 SHA512 (ruby-2.3.4.tar.bz2) = ad1f16142615498232d0de85149585be1d2c5de2bc40ec160d272a09e098ef6f317d8b25026001735261fd1c5bc0d1f8513a8474e89f0d86eed5b2fe7338d64e
 Size (ruby-2.3.4.tar.bz2) = 14434361 bytes
-SHA1 (patch-configure) = e1af70b87cfbb7c61a2bf65109b6e18efb825f0f
+SHA1 (patch-configure) = 9325d9527e96a8f56078c6b78d3f1334803b0d94
 SHA1 (patch-ext_dbm_extconf.rb) = c998f8735db54b1ae2bc8b6caa359ce88bc7a45b
 SHA1 (patch-ext_openssl_ossl__ssl.c) = 24e794aae278da6204e29212d9e2add0b0119ea4
 SHA1 (patch-lib_mkmf.rb) = d01302bac014ec1d72bbf19df64bc2c93c07ec5e
diff -r 4ff5db3dd0bc -r c76d9e73ca36 lang/ruby23-base/patches/patch-configure
--- a/lang/ruby23-base/patches/patch-configure  Thu Jul 06 15:46:37 2017 +0000
+++ b/lang/ruby23-base/patches/patch-configure  Thu Jul 06 16:35:05 2017 +0000
@@ -1,9 +1,10 @@
-$NetBSD: patch-configure,v 1.2 2016/05/15 14:19:56 taca Exp $
+$NetBSD: patch-configure,v 1.3 2017/07/06 16:35:05 taca Exp $
 
 * Adding Interix support.
 * Ignore doxygen.
+* Pass LDFLAGS to LIBRUBY_DLDFLAGS via DLDFLAGS as Ruby 2.4 dose.
 
---- configure.orig     2016-04-25 18:08:47.000000000 +0000
+--- configure.orig     2017-03-29 16:45:31.000000000 +0000
 +++ configure
 @@ -5678,7 +5678,7 @@ esac
  else
@@ -14,7 +15,15 @@
  
            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for real target cpu" >&5
  $as_echo_n "checking for real target cpu... " >&6; }
-@@ -9179,6 +9179,10 @@ esac
+@@ -7553,6 +7553,7 @@ fi
+ 
+ 
+ 
++: ${DLDFLAGS="$LDFLAGS"}
+ 
+ case $RUBY_PATCHLEVEL in #(
+   -*) :
+@@ -9235,6 +9236,10 @@ esac
        LIBS="-lm $LIBS"
                ac_cv_func_round=no
                 ;; #(
@@ -25,7 +34,7 @@
    nacl) :
  
    LIBS="-lm $LIBS"
-@@ -17907,6 +17911,8 @@ else
+@@ -17963,6 +17968,8 @@ else
  # ifdef _MSC_VER
  #  include <malloc.h>
  #  define alloca _alloca
@@ -34,7 +43,7 @@
  # else
  #  ifdef HAVE_ALLOCA_H
  #   include <alloca.h>
-@@ -22407,7 +22413,9 @@ esac ;; #(
+@@ -22463,7 +22470,9 @@ esac ;; #(
    interix*) :
        : ${LDSHARED='$(CC) -shared'}
                        XLDFLAGS="$XLDFLAGS -Wl,-E"
@@ -44,7 +53,26 @@
                        rb_cv_dlopen=yes ;; #(
    freebsd*|dragonfly*) :
  
-@@ -23585,7 +23593,7 @@ esac
+@@ -23630,7 +23639,17 @@ esac
+        ;; #(
+   linux* | gnu* | k*bsd*-gnu | atheos* | kopensolaris*-gnu | haiku*) :
+ 
+-      LIBRUBY_DLDFLAGS='-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR)'" $LDFLAGS_OPTDIR"
++      # RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS)
++      for rb_opt in '-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR)' "$LDFLAGS_OPTDIR"; do
++      case " ${LIBRUBY_DLDFLAGS-} " in #(
++  *" ${rb_opt} "*) :
++     ;; #(
++  '  ') :
++     LIBRUBY_DLDFLAGS="${rb_opt}" ;; #(
++  *) :
++     LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS ${rb_opt}" ;;
++esac
++      done
+       LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR) lib$(RUBY_SO_NAME).so'
+       if test "$load_relative" = yes; then
+           libprefix="'\$\${ORIGIN}/../${libdir_basename}'"
+@@ -23641,7 +23660,7 @@ esac
    freebsd*|dragonfly*) :
  
        SOLIBS='$(LIBS)'
@@ -53,7 +81,45 @@
        if test "$rb_cv_binary_elf" != "yes" ; then
            LIBRUBY_SO="$LIBRUBY_SO.\$(TEENY)"
            LIBRUBY_ALIASES=''
-@@ -23654,7 +23662,12 @@ esac
+@@ -23651,7 +23670,17 @@ esac
+ 
+       SOLIBS='$(LIBS)'
+       LIBRUBY_SO='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR).$(TEENY)'
+-      LIBRUBY_DLDFLAGS='-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR)'" $LDFLAGS_OPTDIR"
++      # RUBY_APPEND_OPTIONS(LIBRUBY_DLDFLAGS)
++      for rb_opt in '-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR)' "$LDFLAGS_OPTDIR"; do
++      case " ${LIBRUBY_DLDFLAGS-} " in #(
++  *" ${rb_opt} "*) :
++     ;; #(
++  '  ') :
++     LIBRUBY_DLDFLAGS="${rb_opt}" ;; #(
++  *) :
++     LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS ${rb_opt}" ;;
++esac
++      done
+       if test "$rb_cv_binary_elf" = yes; then # ELF platforms
+          LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR) lib$(RUBY_SO_NAME).so'
+       else    # a.out platforms



Home | Main Index | Thread Index | Old Index