From: Christoph Hellwig Date: Sat, 10 Oct 2009 21:02:53 +0000 (-0400) Subject: update configure defaults X-Git-Tag: v3.0.5~11^2~7 X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fxfsprogs-dev.git;a=commitdiff_plain;h=595e27dbd7360e81fa9e74d992098fe44fd7aed5 update configure defaults Currenly xfsprogs has two different sets of defauls for it's installation layout. One is in set in the configure.in file and used when running ./configure directly, and the second one is passed by make to ./configure when configuring through make. The defaults in the makefile are a lot better, as they install xfsprogs into the / vs /usr split used by most distributions and enable multi-libs when detected. This patch changes the build system to also use the same defaults when running ./configure. To do this we get rid of some of the hacky autoconf abuse we had in the past in xfsprogs and just use the normal default sbindir and libdir variables for /usr/sbin an /usr/lib respecticly and define new root_sbindir and root_libdir variables for those few binaries installed into /. The installation to / is disabled if the user chooses a non-default exec prefix. Signed-off-by: Christoph Hellwig Reviewed-by: Eric Sandeen --- diff --git a/Makefile b/Makefile index 8a7ef4d72..491a6fd11 100644 --- a/Makefile +++ b/Makefile @@ -58,18 +58,7 @@ configure: autoconf include/builddefs: configure - ./configure \ - --prefix=/ \ - --exec-prefix=/ \ - --sbindir=/sbin \ - --bindir=/usr/sbin \ - --libdir=/lib \ - --libexecdir=/usr/lib \ - --enable-lib64=yes \ - --includedir=/usr/include \ - --mandir=/usr/share/man \ - --datadir=/usr/share \ - $$LOCAL_CONFIGURE_OPTIONS + ./configure $$LOCAL_CONFIGURE_OPTIONS touch .census include/platform_defs.h: include/builddefs diff --git a/configure.in b/configure.in index 8f5782a3c..999831d20 100644 --- a/configure.in +++ b/configure.in @@ -36,10 +36,36 @@ AC_ARG_ENABLE(termcap, AC_SUBST(libtermcap) AC_ARG_ENABLE(lib64, -[ --enable-lib64=[yes/no] Enable lib64 support [default=no]],, - enable_lib64=no) +[ --enable-lib64=[yes/no] Enable lib64 support [default=yes]],, + enable_lib64=yes) AC_SUBST(enable_lib64) +# +# If the user specified a libdir ending in lib64 do not append another +# 64 to the library names. +# +base_libdir=`basename "$libdir"` +case $base_libdir in +lib64) + enable_lib64=no +esac + +# +# Some important tools should be installed into the root partitions. +# +# Check whether exec_prefix=/usr: and install them to /sbin in that +# case. If the user choses a different prefix assume he just wants +# a local install for testing and not a system install. +# +case $exec_prefix:$prefix in +NONE:NONE | NONE:/usr | /usr:*) + root_sbindir='/sbin' + AC_SUBST([root_sbindir]) + + root_libdir="/${base_libdir}" + AC_SUBST([root_libdir]) +esac + # Find localized files LOCALIZED_FILES="" for lfile in `find ${srcdir} -name '*.c' -type f || exit 1`; do diff --git a/copy/Makefile b/copy/Makefile index 3ba29993b..3bdc72b8c 100644 --- a/copy/Makefile +++ b/copy/Makefile @@ -18,6 +18,6 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) install-dev: diff --git a/db/Makefile b/db/Makefile index bd3097f51..69a85d76d 100644 --- a/db/Makefile +++ b/db/Makefile @@ -35,10 +35,10 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) - $(INSTALL) -m 755 xfs_admin.sh $(PKG_BIN_DIR)/xfs_admin - $(INSTALL) -m 755 xfs_check.sh $(PKG_BIN_DIR)/xfs_check - $(INSTALL) -m 755 xfs_ncheck.sh $(PKG_BIN_DIR)/xfs_ncheck - $(INSTALL) -m 755 xfs_metadump.sh $(PKG_BIN_DIR)/xfs_metadump + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) + $(INSTALL) -m 755 xfs_admin.sh $(PKG_SBIN_DIR)/xfs_admin + $(INSTALL) -m 755 xfs_check.sh $(PKG_SBIN_DIR)/xfs_check + $(INSTALL) -m 755 xfs_ncheck.sh $(PKG_SBIN_DIR)/xfs_ncheck + $(INSTALL) -m 755 xfs_metadump.sh $(PKG_SBIN_DIR)/xfs_metadump install-dev: diff --git a/debian/Makefile b/debian/Makefile index 9b1d92bae..9a284a765 100644 --- a/debian/Makefile +++ b/debian/Makefile @@ -29,6 +29,6 @@ endif install-d-i: default ifeq ($(PKG_DISTRIBUTION), debian) - $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) - $(INSTALL) -m 755 $(BOOT_MKFS_BIN) $(PKG_SBIN_DIR)/mkfs.xfs + $(INSTALL) -m 755 -d $(PKG_ROOT_SBIN_DIR) + $(INSTALL) -m 755 $(BOOT_MKFS_BIN) $(PKG_ROOT_SBIN_DIR)/mkfs.xfs endif diff --git a/estimate/Makefile b/estimate/Makefile index 192aa3931..c972403a3 100644 --- a/estimate/Makefile +++ b/estimate/Makefile @@ -13,6 +13,6 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) install-dev: diff --git a/fsck/Makefile b/fsck/Makefile index 32291fd70..171d8976c 100644 --- a/fsck/Makefile +++ b/fsck/Makefile @@ -12,6 +12,6 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) - $(INSTALL) -m 755 xfs_fsck.sh $(PKG_SBIN_DIR)/fsck.xfs + $(INSTALL) -m 755 -d $(PKG_ROOT_SBIN_DIR) + $(INSTALL) -m 755 xfs_fsck.sh $(PKG_ROOT_SBIN_DIR)/fsck.xfs install-dev: diff --git a/fsr/Makefile b/fsr/Makefile index b62447ac7..b7b0ab881 100644 --- a/fsr/Makefile +++ b/fsr/Makefile @@ -14,6 +14,6 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) install-dev: diff --git a/growfs/Makefile b/growfs/Makefile index 8a30ea738..2bab89fd9 100644 --- a/growfs/Makefile +++ b/growfs/Makefile @@ -27,7 +27,7 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) - $(INSTALL) -m 755 xfs_info.sh $(PKG_BIN_DIR)/xfs_info + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) + $(INSTALL) -m 755 xfs_info.sh $(PKG_SBIN_DIR)/xfs_info install-dev: diff --git a/include/builddefs.in b/include/builddefs.in index d6bf5c0c2..2eab3428e 100644 --- a/include/builddefs.in +++ b/include/builddefs.in @@ -37,13 +37,6 @@ LIBXLOG = $(TOPDIR)/libxlog/libxlog.la LIBDISK = $(TOPDIR)/libdisk/libdisk.la LIBHANDLE = $(TOPDIR)/libhandle/libhandle.la -DK_INC_DIR = @includedir@/disk - -prefix = @prefix@ -exec_prefix = @exec_prefix@ -top_builddir = @top_builddir@ -datarootdir = @datarootdir@ - PKG_NAME = @pkg_name@ PKG_USER = @pkg_user@ PKG_GROUP = @pkg_group@ @@ -51,11 +44,18 @@ PKG_RELEASE = @pkg_release@ PKG_VERSION = @pkg_version@ PKG_PLATFORM = @pkg_platform@ PKG_DISTRIBUTION= @pkg_distribution@ -PKG_BIN_DIR = @bindir@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +datarootdir = @datarootdir@ +top_builddir = @top_builddir@ + PKG_SBIN_DIR = @sbindir@ +PKG_ROOT_SBIN_DIR = @root_sbindir@ +PKG_ROOT_LIB_DIR= @root_libdir@@libdirsuffix@ PKG_LIB_DIR = @libdir@@libdirsuffix@ -PKG_DEVLIB_DIR = @libexecdir@@libdirsuffix@ PKG_INC_DIR = @includedir@/xfs +DK_INC_DIR = @includedir@/disk PKG_MAN_DIR = @mandir@ PKG_DOC_DIR = @datadir@/doc/@pkg_name@ PKG_LOCALE_DIR = @datadir@/locale diff --git a/include/buildmacros b/include/buildmacros index b825e106c..01743613d 100644 --- a/include/buildmacros +++ b/include/buildmacros @@ -51,16 +51,16 @@ LTINSTALL = $(LIBTOOL) --mode=install $(INSTALL) LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CCF) ifeq ($(ENABLE_SHARED),yes) -LTLDFLAGS += -rpath $(PKG_LIB_DIR) +LTLDFLAGS += -rpath $(PKG_ROOT_LIB_DIR) LTLDFLAGS += -version-info $(LTVERSION) endif ifeq ($(ENABLE_SHARED),yes) INSTALL_LTLIB = \ cd $(TOPDIR)/$(LIBNAME)/.libs; \ - ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \ - ../$(INSTALL) -m 644 -T so_dot_version $(LIBNAME).lai $(PKG_LIB_DIR); \ - ../$(INSTALL) -T so_dot_current $(LIBNAME).lai $(PKG_LIB_DIR) + ../$(INSTALL) -m 755 -d $(PKG_ROOT_LIB_DIR); \ + ../$(INSTALL) -m 644 -T so_dot_version $(LIBNAME).lai $(PKG_ROOT_LIB_DIR); \ + ../$(INSTALL) -T so_dot_current $(LIBNAME).lai $(PKG_ROOT_LIB_DIR) endif # Libtool thinks the static and shared libs should be in the same dir, so @@ -72,15 +72,15 @@ endif ifeq ($(ENABLE_SHARED),yes) INSTALL_LTLIB_DEV = \ cd $(TOPDIR)/$(LIBNAME)/.libs; \ - ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \ - ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_DEVLIB_DIR); \ - ../$(INSTALL) -m 644 $(LIBNAME).lai $(PKG_DEVLIB_DIR)/$(LIBNAME).la ; \ ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \ - ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_LIB_DIR); \ - if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \ - ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \ - ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \ - ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \ + ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_LIB_DIR); \ + ../$(INSTALL) -m 644 $(LIBNAME).lai $(PKG_LIB_DIR)/$(LIBNAME).la ; \ + ../$(INSTALL) -m 755 -d $(PKG_ROOT_LIB_DIR); \ + ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_ROOT_LIB_DIR); \ + if test "x$(PKG_LIB_DIR)" != "x$(PKG_ROOT_LIB_DIR)" ; then \ + ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).a $(PKG_ROOT_LIB_DIR)/$(LIBNAME).a; \ + ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).la $(PKG_ROOT_LIB_DIR)/$(LIBNAME).la; \ + ../$(INSTALL) -S $(PKG_ROOT_LIB_DIR)/$(LIBNAME).so $(PKG_LIB_DIR)/$(LIBNAME).so; \ fi else INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC) @@ -88,8 +88,8 @@ endif INSTALL_LTLIB_STATIC = \ cd $(TOPDIR)/$(LIBNAME)/.libs; \ - ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \ - ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_DEVLIB_DIR) + ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \ + ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_LIB_DIR) INSTALL_MAN = \ @for d in $(MAN_PAGES); do \ diff --git a/io/Makefile b/io/Makefile index 1a5187998..59c286097 100644 --- a/io/Makefile +++ b/io/Makefile @@ -68,9 +68,9 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 xfs_bmap.sh $(PKG_BIN_DIR)/xfs_bmap - $(LTINSTALL) -m 755 xfs_freeze.sh $(PKG_BIN_DIR)/xfs_freeze - $(LTINSTALL) -m 755 xfs_mkfile.sh $(PKG_BIN_DIR)/xfs_mkfile + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 xfs_bmap.sh $(PKG_SBIN_DIR)/xfs_bmap + $(LTINSTALL) -m 755 xfs_freeze.sh $(PKG_SBIN_DIR)/xfs_freeze + $(LTINSTALL) -m 755 xfs_mkfile.sh $(PKG_SBIN_DIR)/xfs_mkfile install-dev: diff --git a/logprint/Makefile b/logprint/Makefile index 1388370a0..1c7d9972c 100644 --- a/logprint/Makefile +++ b/logprint/Makefile @@ -21,6 +21,6 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) install-dev: diff --git a/mdrestore/Makefile b/mdrestore/Makefile index 9f192090a..6dc6cd4f4 100644 --- a/mdrestore/Makefile +++ b/mdrestore/Makefile @@ -17,6 +17,6 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) install-dev: diff --git a/mkfs/Makefile b/mkfs/Makefile index b98551750..663af1ccb 100644 --- a/mkfs/Makefile +++ b/mkfs/Makefile @@ -26,6 +26,6 @@ $(FSTYP): $(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS) $(LIBDISK) $(PLDLIBS) install: default - $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) + $(INSTALL) -m 755 -d $(PKG_ROOT_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_ROOT_SBIN_DIR) install-dev: diff --git a/quota/Makefile b/quota/Makefile index e7c8629f2..7aedd562d 100644 --- a/quota/Makefile +++ b/quota/Makefile @@ -33,6 +33,6 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) install-dev: diff --git a/repair/Makefile b/repair/Makefile index 38e0f6421..a80ea41fd 100644 --- a/repair/Makefile +++ b/repair/Makefile @@ -47,6 +47,6 @@ include $(BUILDRULES) #CFLAGS += ... install: default - $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) + $(INSTALL) -m 755 -d $(PKG_ROOT_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_ROOT_SBIN_DIR) install-dev: diff --git a/rtcp/Makefile b/rtcp/Makefile index 5947692e3..5f1a803e8 100644 --- a/rtcp/Makefile +++ b/rtcp/Makefile @@ -14,6 +14,6 @@ default: $(LTCOMMAND) include $(BUILDRULES) install: default - $(INSTALL) -m 755 -d $(PKG_BIN_DIR) - $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR) + $(INSTALL) -m 755 -d $(PKG_SBIN_DIR) + $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR) install-dev: