libtool-commit
[Top][All Lists]
Advanced

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

[no subject]


From: Ileana Dumitrescu
Date: Tue, 3 Sep 2024 13:30:55 -0400 (EDT)

branch: development
commit 33cf00bb228a9d5f89ba4f7c18fec194c6828364
Author: Bruno Haible <bruno@clisp.org>
AuthorDate: Mon Jan 29 16:35:17 2024 +0100

    Rename option --with-pic to --enable-pic.
    
    Reported at <https://savannah.gnu.org/support/index.php?110674>.
    
    * doc/libtool.texi (LT_INIT): Talk about --enable-pic instead of
    --with-pic, and about --disable-pic instead of --without-pic.
    (Test descriptions): Likewise.
    * m4/ltoptions.m4 (_LT_WITH_PIC): Use AC_ARG_ENABLE instead of
    AC_ARG_WITH. In the default case, use _AC_ENABLE_IF, in order to still
    recognize the old options --with-pic and --without-pic.
    * tests/demo.at: Add a test for --enable-pic, keeping the test for
    --with-pic. Test '--disable-pic' instead of '--with-pic=no'.
    * tests/with-pic.at: Test --enable-pic instead of --with-pic.
    * NEWS: Mention the change.
---
 NEWS              |  7 +++++++
 doc/libtool.texi  | 23 +++++++++++----------
 m4/ltoptions.m4   | 60 ++++++++++++++++++++++++++++++++++++-------------------
 tests/demo.at     | 12 ++++++++++-
 tests/with-pic.at | 12 +++++------
 5 files changed, 76 insertions(+), 38 deletions(-)

diff --git a/NEWS b/NEWS
index 023b0413..7fd91bfb 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,13 @@ NEWS - list of user-visible changes between releases of GNU 
Libtool
 
 * Noteworthy changes in release ?.? (????-??-??) [?]
 
+** Bug fixes:
+
+  - The configure options --with-pic and --without-pic have been renamed
+    to --enable-pic and --disable-pic, respectively.  The old names
+    --with-pic and --without-pic are still supported, though, for
+    backward compatibility.
+
 
 * Noteworthy changes in release 2.5.2 (2024-08-29) [beta]
 
diff --git a/doc/libtool.texi b/doc/libtool.texi
index 503c0fb1..09e30d21 100644
--- a/doc/libtool.texi
+++ b/doc/libtool.texi
@@ -2138,8 +2138,8 @@ LT_PREREQ([@value{VERSION}])
 @defmacx AC_PROG_LIBTOOL
 @defmacx AM_PROG_LIBTOOL
 Add support for the @option{--enable-shared}, @option{--disable-shared},
-@option{--enable-static}, @option{--disable-static}, @option{--with-pic}, and
-@option{--without-pic} @code{configure} flags.@footnote{@code{LT_INIT} requires
+@option{--enable-static}, @option{--disable-static}, @option{--enable-pic}, and
+@option{--disable-pic} @code{configure} flags.@footnote{@code{LT_INIT} requires
 that you define the @file{Makefile} variable @code{top_builddir} in your
 @file{Makefile.in}.  Automake does this automatically, but Autoconf
 users should set it to the relative path to the top of your build
@@ -2182,12 +2182,13 @@ behaves similarly, but it uses @option{--enable-static} 
and
 The package name @samp{default} matches any packages that have not set
 their name in the @code{PACKAGE} environment variable.
 
-The @option{--with-pic} and @option{--without-pic} configure flags can be used
-to specify whether or not @command{libtool} uses PIC objects.  By default,
+The @option{--enable-pic} and @option{--disable-pic} configure flags can be
+used to specify whether or not @command{libtool} uses PIC objects.  By default,
 @command{libtool} uses PIC objects for shared libraries and non-PIC objects for
-static libraries.  The @option{--with-pic} option also accepts a 
comma-separated
-list of package names.  Specifying @option{--with-pic=@var{pkgs}} is the same
-as configuring every package in @var{pkgs} with @option{--with-pic} and every
+static libraries.
+The @option{--enable-pic} option also accepts a comma-separated
+list of package names.  Specifying @option{--enable-pic=@var{pkgs}} is the same
+as configuring every package in @var{pkgs} with @option{--enable-pic} and every
 other package with the default configuration.  The package name @samp{default}
 is treated the same as for @option{--enable-shared} and
 @option{--enable-static}.
@@ -2301,12 +2302,12 @@ specifying @option{--enable-static} to 
@command{configure}.
 @item pic-only
 Change the default behaviour for @command{libtool} to try to use only
 PIC objects.  The user may still override this default by specifying
-@option{--without-pic} to @command{configure}.
+@option{--disable-pic} to @command{configure}.
 
 @item no-pic
 Change the default behaviour of @command{libtool} to try to use only
 non-PIC objects.  The user may still override this default by
-specifying @option{--with-pic} to @command{configure}.
+specifying @option{--enable-pic} to @command{configure}.
 
 @end table
 
@@ -5605,9 +5606,9 @@ update.  In each case, the tests verify that the original 
library will link and
 install as expected.
 
 @item @file{tests/with_pic.at}
-Tests the function of the @option{--with-pic} flag.  The @option{--with-pic}
+Tests the function of the @option{--enable-pic} flag.  The 
@option{--enable-pic}
 flag is used to specify whether or not @command{libtool} uses PIC objects.
-This includes tests for setting @option{--with-pic} to no, yes, or a comma
+This includes tests for setting @option{--enable-pic} to no, yes, or a comma
 delimited list of package names.
 
 @end table
diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4
index 6dfe99f1..d4e46dc8 100644
--- a/m4/ltoptions.m4
+++ b/m4/ltoptions.m4
@@ -8,7 +8,7 @@
 # unlimited permission to copy and/or distribute it, with or without
 # modifications, as long as this notice is preserved.
 
-# serial 9 ltoptions.m4
+# serial 10 ltoptions.m4
 
 # This is to help aclocal find these macros, as it can't see m4_define.
 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
@@ -376,30 +376,50 @@ LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], 
[_LT_WITH_AIX_SONAME([svr4])])
 
 # _LT_WITH_PIC([MODE])
 # --------------------
-# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
+# implement the --enable-pic flag, and support the 'pic-only' and 'no-pic'
 # LT_INIT options.
 # MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
 m4_define([_LT_WITH_PIC],
-[AC_ARG_WITH([pic],
-    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
+[AC_ARG_ENABLE([pic],
+    [AS_HELP_STRING([--enable-pic@<:@=PKGS@:>@],
        [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
     [lt_p=${PACKAGE-default}
-    case $withval in
-    yes|no) pic_mode=$withval ;;
-    *)
-      pic_mode=default
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
-      for lt_pkg in $withval; do
-       IFS=$lt_save_ifs
-       if test "X$lt_pkg" = "X$lt_p"; then
-         pic_mode=yes
-       fi
-      done
-      IFS=$lt_save_ifs
-      ;;
-    esac],
-    [pic_mode=m4_default([$1], [default])])
+     case $enableval in
+     yes|no) pic_mode=$enableval ;;
+     *)
+       pic_mode=default
+       # Look at the argument we got.  We use all the common list separators.
+       lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
+       for lt_pkg in $enableval; do
+        IFS=$lt_save_ifs
+        if test "X$lt_pkg" = "X$lt_p"; then
+          pic_mode=yes
+        fi
+       done
+       IFS=$lt_save_ifs
+       ;;
+     esac],
+    [dnl Continue to support --with-pic and --without-pic, for backward
+     dnl compatibility.
+     _AC_ENABLE_IF([with], [pic],
+       [lt_p=${PACKAGE-default}
+        case $withval in
+        yes|no) pic_mode=$withval ;;
+        *)
+          pic_mode=default
+          # Look at the argument we got.  We use all the common list 
separators.
+          lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
+          for lt_pkg in $withval; do
+            IFS=$lt_save_ifs
+            if test "X$lt_pkg" = "X$lt_p"; then
+              pic_mode=yes
+            fi
+          done
+          IFS=$lt_save_ifs
+          ;;
+        esac],
+       [pic_mode=m4_default([$1], [default])])]
+    )
 
 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
 ])# _LT_WITH_PIC
diff --git a/tests/demo.at b/tests/demo.at
index 3e309170..a506a93e 100644
--- a/tests/demo.at
+++ b/tests/demo.at
@@ -495,6 +495,16 @@ AT_SETUP([force PIC objects])
 
 _LT_DEMO_SETUP
 
+LT_AT_CHECK_CONFIG([--enable-pic])
+_LT_CHECK_EXECUTE
+
+AT_CLEANUP
+
+
+AT_SETUP([force PIC objects (old option name)])
+
+_LT_DEMO_SETUP
+
 LT_AT_CHECK_CONFIG([--with-pic])
 _LT_CHECK_EXECUTE
 
@@ -533,7 +543,7 @@ fi
 ])
 
 _LT_DEMO_SETUP
-LT_AT_CHECK_CONFIG([--with-pic=no])
+LT_AT_CHECK_CONFIG([--disable-pic])
 _LT_CHECK_EXECUTE
 
 AT_CLEANUP
diff --git a/tests/with-pic.at b/tests/with-pic.at
index 67b8c694..c2efe9ee 100644
--- a/tests/with-pic.at
+++ b/tests/with-pic.at
@@ -1,4 +1,4 @@
-# with-pic.at -- test the --with-pic flag -*- Autotest -*-
+# with-pic.at -- test the --enable-pic flag -*- Autotest -*-
 
 #   Copyright (C) 2010-2019, 2021-2024 Free Software Foundation, Inc.
 #
@@ -18,7 +18,7 @@
 # along with GNU Libtool.  If not, see <https://www.gnu.org/licenses/>.
 ####
 
-AT_SETUP([test --with-pic])
+AT_SETUP([test --enable-pic])
 
 # Set up a tests/demo.at style project.
 _LT_DEMO_SETUP
@@ -38,22 +38,22 @@ AT_CHECK([test . != "$at_srcdir" || exit 77])
 
 : ${MAKE=make}
 
-LT_AT_CONFIGURE([--disable-shared --with-pic=no])
+LT_AT_CONFIGURE([--disable-shared --enable-pic=no])
 AT_CHECK([$MAKE], [], [stdout], [ignore])
 AT_CHECK([$FGREP -v "$pic_flag" stdout], [], [ignore], [ignore])
 $MAKE clean
 
-LT_AT_CONFIGURE([--disable-shared --with-pic=yes])
+LT_AT_CONFIGURE([--disable-shared --enable-pic=yes])
 AT_CHECK([$MAKE], [], [stdout], [ignore])
 AT_CHECK([$FGREP "$pic_flag" stdout], [], [ignore], [ignore])
 $MAKE clean
 
-LT_AT_CONFIGURE([--disable-shared --with-pic="demo,foo,bar"])
+LT_AT_CONFIGURE([--disable-shared --enable-pic="demo,foo,bar"])
 AT_CHECK([$MAKE], [], [stdout], [ignore])
 AT_CHECK([$FGREP "$pic_flag" stdout], [], [ignore], [ignore])
 $MAKE clean
 
-LT_AT_CONFIGURE([--disable-shared --with-pic="foo,bar"])
+LT_AT_CONFIGURE([--disable-shared --enable-pic="foo,bar"])
 AT_CHECK([$MAKE], [], [stdout], [ignore])
 AT_CHECK([$FGREP -v "$pic_flag" stdout], [], [ignore], [ignore])
 $MAKE clean



reply via email to

[Prev in Thread] Current Thread [Next in Thread]