| # with-pic.at -- test the --enable-pic flag -*- Autotest -*- |
| |
| # Copyright (C) 2010-2019, 2021-2025 Free Software Foundation, Inc. |
| # |
| # This file is part of GNU Libtool. |
| # |
| # GNU Libtool is free software; you can redistribute it and/or |
| # modify it under the terms of the GNU General Public License as |
| # published by the Free Software Foundation; either version 2 of |
| # the License, or (at your option) any later version. |
| # |
| # GNU Libtool is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| # |
| # You should have received a copy of the GNU General Public License |
| # along with GNU Libtool. If not, see <https://www.gnu.org/licenses/>. |
| #### |
| |
| AT_SETUP([test --enable-pic]) |
| |
| # Set up a tests/demo.at style project. |
| _LT_DEMO_SETUP |
| |
| # Bootstrap, and configure it so that we can extract libtool --config |
| # settings. |
| LT_AT_BOOTSTRAP([], [-I m4], [], [--add-missing], [], |
| [], [ignore]) |
| eval `$LIBTOOL --config | $EGREP '^(pic_flag|FGREP)='` |
| |
| no_dlls=: |
| case " $pic_flag " in |
| *" -DDLL_EXPORT "*) no_dlls=false ;; |
| esac |
| AT_CHECK([$no_dlls || exit 77]) |
| AT_CHECK([test . != "$at_srcdir" || exit 77]) |
| |
| : ${MAKE=make} |
| |
| 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 --enable-pic=yes]) |
| AT_CHECK([$MAKE], [], [stdout], [ignore]) |
| AT_CHECK([$FGREP "$pic_flag" stdout], [], [ignore], [ignore]) |
| $MAKE clean |
| |
| 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 --enable-pic="foo,bar"]) |
| AT_CHECK([$MAKE], [], [stdout], [ignore]) |
| AT_CHECK([$FGREP -v "$pic_flag" stdout], [], [ignore], [ignore]) |
| $MAKE clean |
| |
| AT_CLEANUP |