diff options
author | Prakash Surya <[email protected]> | 2011-12-06 17:33:51 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2011-12-14 16:44:10 -0800 |
commit | c2dceb5cd5221f7e1bde915218f5d2cf69920959 (patch) | |
tree | c6cdcbea4bb00c969661e1c59eafda4393bbda6c | |
parent | 699d5ee8a99471b49b07e69108045301b865b0d6 (diff) |
Add make rule for building Arch Linux packages
Added the necessary build infrastructure for building packages
compatible with the Arch Linux distribution. As such, one can now run:
$ ./configure
$ make pkg # Alternatively, one can run 'make arch' as well
on an Arch Linux machine to create two binary packages compatible with
the pacman package manager, one for the spl userland utilties and
another for the spl kernel modules. The new packages can then be
installed by running:
# pacman -U $package.pkg.tar.xz
In addition, source-only packages suitable for an Arch Linux chroot
environment or remote builder can also be built using the 'sarch' make
rule.
NOTE: Since the source dist tarball is created on the fly from the head
of the build tree, it's MD5 hash signature will be continually influx.
As a result, the md5sum variable was intentionally omitted from the
PKGBUILD files, and the '--skipinteg' makepkg option is used. This may
or may not have any serious security implications, as the source tarball
is not being downloaded from an outside source.
Signed-off-by: Prakash Surya <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes: #68
-rw-r--r-- | Makefile.am | 1 | ||||
-rw-r--r-- | Makefile.in | 64 | ||||
-rw-r--r-- | PKGBUILD-spl-modules.in | 23 | ||||
-rw-r--r-- | PKGBUILD-spl.in | 23 | ||||
-rw-r--r-- | cmd/Makefile.in | 6 | ||||
-rw-r--r-- | config/arch.am | 40 | ||||
-rw-r--r-- | config/spl-build.m4 | 46 | ||||
-rwxr-xr-x | configure | 93 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | include/Makefile.in | 6 | ||||
-rw-r--r-- | lib/Makefile.in | 6 | ||||
-rw-r--r-- | scripts/Makefile.in | 6 |
12 files changed, 296 insertions, 20 deletions
diff --git a/Makefile.am b/Makefile.am index 9f33db7cd..11fa8ec18 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,6 +1,7 @@ include $(top_srcdir)/config/rpm.am include $(top_srcdir)/config/deb.am include $(top_srcdir)/config/tgz.am +include $(top_srcdir)/config/arch.am if CONFIG_USER USER_DIR = lib cmd scripts diff --git a/Makefile.in b/Makefile.in index e47e16f0b..23f20662f 100644 --- a/Makefile.in +++ b/Makefile.in @@ -51,6 +51,12 @@ # ############################################################################### +############################################################################### +# Written by Prakash Surya <[email protected]> +############################################################################### +# Build targets for RPM packages. +############################################################################### + VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ @@ -73,10 +79,12 @@ host_triplet = @host@ target_triplet = @target@ DIST_COMMON = $(am__configure_deps) $(noinst_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ + $(srcdir)/PKGBUILD-spl-modules.in $(srcdir)/PKGBUILD-spl.in \ $(srcdir)/spl-modules.spec.in $(srcdir)/spl.spec.in \ - $(srcdir)/spl_config.h.in $(top_srcdir)/config/deb.am \ - $(top_srcdir)/config/rpm.am $(top_srcdir)/config/tgz.am \ - $(top_srcdir)/configure $(top_srcdir)/module/Makefile.in \ + $(srcdir)/spl_config.h.in $(top_srcdir)/config/arch.am \ + $(top_srcdir)/config/deb.am $(top_srcdir)/config/rpm.am \ + $(top_srcdir)/config/tgz.am $(top_srcdir)/configure \ + $(top_srcdir)/module/Makefile.in \ $(top_srcdir)/module/spl/Makefile.in \ $(top_srcdir)/module/splat/Makefile.in AUTHORS COPYING \ ChangeLog INSTALL config/config.guess config/config.sub \ @@ -93,7 +101,8 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = spl_config.h CONFIG_CLEAN_FILES = module/Makefile module/spl/Makefile \ - module/splat/Makefile spl.spec spl-modules.spec + module/splat/Makefile spl.spec spl-modules.spec PKGBUILD-spl \ + PKGBUILD-spl-modules CONFIG_CLEAN_VPATH_FILES = AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) @@ -191,6 +200,8 @@ GREP = @GREP@ HAVE_ALIEN = @HAVE_ALIEN@ HAVE_DPKG = @HAVE_DPKG@ HAVE_DPKGBUILD = @HAVE_DPKGBUILD@ +HAVE_MAKEPKG = @HAVE_MAKEPKG@ +HAVE_PACMAN = @HAVE_PACMAN@ HAVE_RPM = @HAVE_RPM@ HAVE_RPMBUILD = @HAVE_RPMBUILD@ INSTALL = @INSTALL@ @@ -215,6 +226,8 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MAKEPKG = @MAKEPKG@ +MAKEPKG_VERSION = @MAKEPKG_VERSION@ MKDIR_P = @MKDIR_P@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -228,6 +241,8 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ +PACMAN = @PACMAN@ +PACMAN_VERSION = @PACMAN_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ RANLIB = @RANLIB@ RPM = @RPM@ @@ -320,7 +335,7 @@ all: spl_config.h .SUFFIXES: am--refresh: @: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/config/rpm.am $(top_srcdir)/config/deb.am $(top_srcdir)/config/tgz.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/config/rpm.am $(top_srcdir)/config/deb.am $(top_srcdir)/config/tgz.am $(top_srcdir)/config/arch.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -379,6 +394,10 @@ spl.spec: $(top_builddir)/config.status $(srcdir)/spl.spec.in cd $(top_builddir) && $(SHELL) ./config.status $@ spl-modules.spec: $(top_builddir)/config.status $(srcdir)/spl-modules.spec.in cd $(top_builddir) && $(SHELL) ./config.status $@ +PKGBUILD-spl: $(top_builddir)/config.status $(srcdir)/PKGBUILD-spl.in + cd $(top_builddir) && $(SHELL) ./config.status $@ +PKGBUILD-spl-modules: $(top_builddir)/config.status $(srcdir)/PKGBUILD-spl-modules.in + cd $(top_builddir) && $(SHELL) ./config.status $@ mostlyclean-libtool: -rm -f *.lo @@ -955,6 +974,41 @@ tgz-utils: tgz-local rpm-utils tgz: tgz-modules tgz-utils +sarch-modules: + $(MAKE) $(AM_MAKEFLAGS) pkg="${PACKAGE}-modules" sarch-common + +sarch-utils: + $(MAKE) $(AM_MAKEFLAGS) pkg="${PACKAGE}" sarch-common + +sarch: sarch-modules sarch-utils + +arch-modules: + $(MAKE) $(AM_MAKEFLAGS) pkg="${PACKAGE}-modules" arch-common + +arch-utils: + $(MAKE) $(AM_MAKEFLAGS) pkg="${PACKAGE}" arch-common + +arch: arch-modules arch-utils + +arch-local: + @(if test "${HAVE_MAKEPKG}" = "no"; then \ + echo -e "\n" \ + "*** Required util ${MAKEPKG} missing. Please install the\n" \ + "*** package for your distribution which provides ${MAKEPKG},\n" \ + "*** re-run configure, and try again.\n"; \ + exit 1; \ + fi;) + +sarch-common: dist + pkgbuild=PKGBUILD-$(pkg); \ + $(MAKE) $(AM_MAKEFLAGS) arch-local || exit 1; \ + $(MAKEPKG) --allsource --skipinteg --nodeps -p $$pkgbuild || exit 1; + +arch-common: dist + pkgbuild=PKGBUILD-$(pkg); \ + $(MAKE) $(AM_MAKEFLAGS) arch-local || exit 1; \ + $(MAKEPKG) --skipinteg -p $$pkgbuild || exit 1; + distclean-local:: -$(RM) -R autom4te*.cache -find . \( -name SCCS -o -name BitKeeper -o -name .svn -o -name CVS \ diff --git a/PKGBUILD-spl-modules.in b/PKGBUILD-spl-modules.in new file mode 100644 index 000000000..a04bd4fcf --- /dev/null +++ b/PKGBUILD-spl-modules.in @@ -0,0 +1,23 @@ +# Maintainer: Prakash Surya <[email protected]> +pkgname=@SPL_META_NAME@-modules +pkgver=@SPL_META_VERSION@ +pkgrel=@SPL_META_RELEASE@ +pkgdesc="Contains kernel modules for emulating Solaris style primatives in the linux kernel." +arch=(x86_64) +url="git://github.com/zfsonlinux/spl.git" +license=(@LICENSE@) +source=(@SPL_META_NAME@-@[email protected]) + +build() { + cd $srcdir/@SPL_META_NAME@-@SPL_META_VERSION@ + ./configure --with-config=kernel \ + --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib + make +} + +package() { + cd $srcdir/@SPL_META_NAME@-@SPL_META_VERSION@ + make DESTDIR=$pkgdir install +} diff --git a/PKGBUILD-spl.in b/PKGBUILD-spl.in new file mode 100644 index 000000000..bc27f4626 --- /dev/null +++ b/PKGBUILD-spl.in @@ -0,0 +1,23 @@ +# Maintainer: Prakash Surya <[email protected]> +pkgname=@SPL_META_NAME@ +pkgver=@SPL_META_VERSION@ +pkgrel=@SPL_META_RELEASE@ +pkgdesc="Contains the support utilities for the spl." +arch=(x86_64) +url="git://github.com/zfsonlinux/spl.git" +license=(@LICENSE@) +source=(@SPL_META_NAME@-@[email protected]) + +build() { + cd $srcdir/@SPL_META_NAME@-@SPL_META_VERSION@ + ./configure --with-config=user \ + --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib + make +} + +package() { + cd $srcdir/@SPL_META_NAME@-@SPL_META_VERSION@ + make DESTDIR=$pkgdir install +} diff --git a/cmd/Makefile.in b/cmd/Makefile.in index 7f87fb2ec..5d6e0c9f0 100644 --- a/cmd/Makefile.in +++ b/cmd/Makefile.in @@ -136,6 +136,8 @@ GREP = @GREP@ HAVE_ALIEN = @HAVE_ALIEN@ HAVE_DPKG = @HAVE_DPKG@ HAVE_DPKGBUILD = @HAVE_DPKGBUILD@ +HAVE_MAKEPKG = @HAVE_MAKEPKG@ +HAVE_PACMAN = @HAVE_PACMAN@ HAVE_RPM = @HAVE_RPM@ HAVE_RPMBUILD = @HAVE_RPMBUILD@ INSTALL = @INSTALL@ @@ -160,6 +162,8 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MAKEPKG = @MAKEPKG@ +MAKEPKG_VERSION = @MAKEPKG_VERSION@ MKDIR_P = @MKDIR_P@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -173,6 +177,8 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ +PACMAN = @PACMAN@ +PACMAN_VERSION = @PACMAN_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ RANLIB = @RANLIB@ RPM = @RPM@ diff --git a/config/arch.am b/config/arch.am new file mode 100644 index 000000000..591013afd --- /dev/null +++ b/config/arch.am @@ -0,0 +1,40 @@ +############################################################################### +# Written by Prakash Surya <[email protected]> +############################################################################### +# Build targets for RPM packages. +############################################################################### + +sarch-modules: + $(MAKE) $(AM_MAKEFLAGS) pkg="${PACKAGE}-modules" sarch-common + +sarch-utils: + $(MAKE) $(AM_MAKEFLAGS) pkg="${PACKAGE}" sarch-common + +sarch: sarch-modules sarch-utils + +arch-modules: + $(MAKE) $(AM_MAKEFLAGS) pkg="${PACKAGE}-modules" arch-common + +arch-utils: + $(MAKE) $(AM_MAKEFLAGS) pkg="${PACKAGE}" arch-common + +arch: arch-modules arch-utils + +arch-local: + @(if test "${HAVE_MAKEPKG}" = "no"; then \ + echo -e "\n" \ + "*** Required util ${MAKEPKG} missing. Please install the\n" \ + "*** package for your distribution which provides ${MAKEPKG},\n" \ + "*** re-run configure, and try again.\n"; \ + exit 1; \ + fi;) + +sarch-common: dist + pkgbuild=PKGBUILD-$(pkg); \ + $(MAKE) $(AM_MAKEFLAGS) arch-local || exit 1; \ + $(MAKEPKG) --allsource --skipinteg --nodeps -p $$pkgbuild || exit 1; + +arch-common: dist + pkgbuild=PKGBUILD-$(pkg); \ + $(MAKE) $(AM_MAKEFLAGS) arch-local || exit 1; \ + $(MAKEPKG) --skipinteg -p $$pkgbuild || exit 1; diff --git a/config/spl-build.m4 b/config/spl-build.m4 index d0bd97cb4..2297937c0 100644 --- a/config/spl-build.m4 +++ b/config/spl-build.m4 @@ -298,6 +298,48 @@ AC_DEFUN([SPL_AC_DPKG], [ ]) dnl # +dnl # Check for pacman+makepkg to build Arch Linux packages. If these +dnl # tools are missing it is non-fatal but you will not be able to +dnl # build Arch Linux packages and will be warned if you try too. +dnl # +AC_DEFUN([SPL_AC_PACMAN], [ + PACMAN=pacman + MAKEPKG=makepkg + + AC_MSG_CHECKING([whether $PACMAN is available]) + tmp=$($PACMAN --version 2>/dev/null) + AS_IF([test -n "$tmp"], [ + PACMAN_VERSION=$(echo $tmp | + $AWK '/Pacman/ { print $[3] }' | + $SED 's/^v//') + HAVE_PACMAN=yes + AC_MSG_RESULT([$HAVE_PACMAN ($PACMAN_VERSION)]) + ],[ + HAVE_PACMAN=no + AC_MSG_RESULT([$HAVE_PACMAN]) + ]) + + AC_MSG_CHECKING([whether $MAKEPKG is available]) + tmp=$($MAKEPKG --version 2>/dev/null) + AS_IF([test -n "$tmp"], [ + MAKEPKG_VERSION=$(echo $tmp | $AWK '/makepkg/ { print $[3] }') + HAVE_MAKEPKG=yes + AC_MSG_RESULT([$HAVE_MAKEPKG ($MAKEPKG_VERSION)]) + ],[ + HAVE_MAKEPKG=no + AC_MSG_RESULT([$HAVE_MAKEPKG]) + ]) + + AC_SUBST(HAVE_PACMAN) + AC_SUBST(PACMAN) + AC_SUBST(PACMAN_VERSION) + + AC_SUBST(HAVE_MAKEPKG) + AC_SUBST(MAKEPKG) + AC_SUBST(MAKEPKG_VERSION) +]) + +dnl # dnl # Until native packaging for various different packing systems dnl # can be added the least we can do is attempt to use alien to dnl # convert the RPM packages to the needed package type. This is @@ -341,6 +383,8 @@ AC_DEFUN([SPL_AC_DEFAULT_PACKAGE], [ VENDOR=slackware ; elif test -f /etc/gentoo-release ; then VENDOR=gentoo ; + elif test -f /etc/arch-release ; then + VENDOR=arch ; else VENDOR= ; fi @@ -355,6 +399,7 @@ AC_DEFUN([SPL_AC_DEFAULT_PACKAGE], [ ubuntu) DEFAULT_PACKAGE=deb ;; debian) DEFAULT_PACKAGE=deb ;; slackware) DEFAULT_PACKAGE=tgz ;; + arch) DEFAULT_PACKAGE=arch;; *) DEFAULT_PACKAGE=rpm ;; esac @@ -369,6 +414,7 @@ AC_DEFUN([SPL_AC_PACKAGE], [ SPL_AC_RPM SPL_AC_DPKG SPL_AC_ALIEN + SPL_AC_PACMAN SPL_AC_DEFAULT_PACKAGE ]) @@ -801,6 +801,12 @@ LINUX SPL_CONFIG DEFAULT_PACKAGE VENDOR +MAKEPKG_VERSION +MAKEPKG +HAVE_MAKEPKG +PACMAN_VERSION +PACMAN +HAVE_PACMAN ALIEN_VERSION ALIEN HAVE_ALIEN @@ -4777,13 +4783,13 @@ if test "${lt_cv_nm_interface+set}" = set; then else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:4780: $ac_compile\"" >&5) + (eval echo "\"\$as_me:4786: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:4783: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:4789: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:4786: output\"" >&5) + (eval echo "\"\$as_me:4792: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -5989,7 +5995,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 5992 "configure"' > conftest.$ac_ext + echo '#line 5998 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -7842,11 +7848,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7845: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7851: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7849: \$? = $ac_status" >&5 + echo "$as_me:7855: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -8181,11 +8187,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8184: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8190: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8188: \$? = $ac_status" >&5 + echo "$as_me:8194: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -8286,11 +8292,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8289: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8295: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:8293: \$? = $ac_status" >&5 + echo "$as_me:8299: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -8341,11 +8347,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8344: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8350: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:8348: \$? = $ac_status" >&5 + echo "$as_me:8354: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -11144,7 +11150,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11147 "configure" +#line 11153 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11240,7 +11246,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11243 "configure" +#line 11249 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11601,6 +11607,58 @@ fi + PACMAN=pacman + MAKEPKG=makepkg + + { $as_echo "$as_me:$LINENO: checking whether $PACMAN is available" >&5 +$as_echo_n "checking whether $PACMAN is available... " >&6; } + tmp=$($PACMAN --version 2>/dev/null) + if test -n "$tmp"; then + + PACMAN_VERSION=$(echo $tmp | + $AWK '/Pacman/ { print $3 }' | + $SED 's/^v//') + HAVE_PACMAN=yes + { $as_echo "$as_me:$LINENO: result: $HAVE_PACMAN ($PACMAN_VERSION)" >&5 +$as_echo "$HAVE_PACMAN ($PACMAN_VERSION)" >&6; } + +else + + HAVE_PACMAN=no + { $as_echo "$as_me:$LINENO: result: $HAVE_PACMAN" >&5 +$as_echo "$HAVE_PACMAN" >&6; } + +fi + + + { $as_echo "$as_me:$LINENO: checking whether $MAKEPKG is available" >&5 +$as_echo_n "checking whether $MAKEPKG is available... " >&6; } + tmp=$($MAKEPKG --version 2>/dev/null) + if test -n "$tmp"; then + + MAKEPKG_VERSION=$(echo $tmp | $AWK '/makepkg/ { print $3 }') + HAVE_MAKEPKG=yes + { $as_echo "$as_me:$LINENO: result: $HAVE_MAKEPKG ($MAKEPKG_VERSION)" >&5 +$as_echo "$HAVE_MAKEPKG ($MAKEPKG_VERSION)" >&6; } + +else + + HAVE_MAKEPKG=no + { $as_echo "$as_me:$LINENO: result: $HAVE_MAKEPKG" >&5 +$as_echo "$HAVE_MAKEPKG" >&6; } + +fi + + + + + + + + + + + { $as_echo "$as_me:$LINENO: checking linux distribution" >&5 $as_echo_n "checking linux distribution... " >&6; } if test -f /etc/redhat-release ; then @@ -11617,6 +11675,8 @@ $as_echo_n "checking linux distribution... " >&6; } VENDOR=slackware ; elif test -f /etc/gentoo-release ; then VENDOR=gentoo ; + elif test -f /etc/arch-release ; then + VENDOR=arch ; else VENDOR= ; fi @@ -11633,6 +11693,7 @@ $as_echo_n "checking default package type... " >&6; } ubuntu) DEFAULT_PACKAGE=deb ;; debian) DEFAULT_PACKAGE=deb ;; slackware) DEFAULT_PACKAGE=tgz ;; + arch) DEFAULT_PACKAGE=arch;; *) DEFAULT_PACKAGE=rpm ;; esac @@ -20228,7 +20289,7 @@ fi -ac_config_files="$ac_config_files Makefile lib/Makefile cmd/Makefile module/Makefile module/spl/Makefile module/splat/Makefile include/Makefile scripts/Makefile spl.spec spl-modules.spec" +ac_config_files="$ac_config_files Makefile lib/Makefile cmd/Makefile module/Makefile module/spl/Makefile module/splat/Makefile include/Makefile scripts/Makefile spl.spec spl-modules.spec PKGBUILD-spl PKGBUILD-spl-modules" cat >confcache <<\_ACEOF @@ -21147,6 +21208,8 @@ do "scripts/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/Makefile" ;; "spl.spec") CONFIG_FILES="$CONFIG_FILES spl.spec" ;; "spl-modules.spec") CONFIG_FILES="$CONFIG_FILES spl-modules.spec" ;; + "PKGBUILD-spl") CONFIG_FILES="$CONFIG_FILES PKGBUILD-spl" ;; + "PKGBUILD-spl-modules") CONFIG_FILES="$CONFIG_FILES PKGBUILD-spl-modules" ;; *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 $as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;} diff --git a/configure.ac b/configure.ac index b09e31fd7..774f6f81a 100644 --- a/configure.ac +++ b/configure.ac @@ -56,6 +56,8 @@ AC_CONFIG_FILES([ scripts/Makefile spl.spec spl-modules.spec + PKGBUILD-spl + PKGBUILD-spl-modules ]) AC_OUTPUT diff --git a/include/Makefile.in b/include/Makefile.in index 823f50d4e..832ffb38d 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -95,6 +95,8 @@ GREP = @GREP@ HAVE_ALIEN = @HAVE_ALIEN@ HAVE_DPKG = @HAVE_DPKG@ HAVE_DPKGBUILD = @HAVE_DPKGBUILD@ +HAVE_MAKEPKG = @HAVE_MAKEPKG@ +HAVE_PACMAN = @HAVE_PACMAN@ HAVE_RPM = @HAVE_RPM@ HAVE_RPMBUILD = @HAVE_RPMBUILD@ INSTALL = @INSTALL@ @@ -119,6 +121,8 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MAKEPKG = @MAKEPKG@ +MAKEPKG_VERSION = @MAKEPKG_VERSION@ MKDIR_P = @MKDIR_P@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -132,6 +136,8 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ +PACMAN = @PACMAN@ +PACMAN_VERSION = @PACMAN_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ RANLIB = @RANLIB@ RPM = @RPM@ diff --git a/lib/Makefile.in b/lib/Makefile.in index 8c363b924..4fdae68e2 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -128,6 +128,8 @@ GREP = @GREP@ HAVE_ALIEN = @HAVE_ALIEN@ HAVE_DPKG = @HAVE_DPKG@ HAVE_DPKGBUILD = @HAVE_DPKGBUILD@ +HAVE_MAKEPKG = @HAVE_MAKEPKG@ +HAVE_PACMAN = @HAVE_PACMAN@ HAVE_RPM = @HAVE_RPM@ HAVE_RPMBUILD = @HAVE_RPMBUILD@ INSTALL = @INSTALL@ @@ -152,6 +154,8 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MAKEPKG = @MAKEPKG@ +MAKEPKG_VERSION = @MAKEPKG_VERSION@ MKDIR_P = @MKDIR_P@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -165,6 +169,8 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ +PACMAN = @PACMAN@ +PACMAN_VERSION = @PACMAN_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ RANLIB = @RANLIB@ RPM = @RPM@ diff --git a/scripts/Makefile.in b/scripts/Makefile.in index 07d181c52..d007d0bd8 100644 --- a/scripts/Makefile.in +++ b/scripts/Makefile.in @@ -90,6 +90,8 @@ GREP = @GREP@ HAVE_ALIEN = @HAVE_ALIEN@ HAVE_DPKG = @HAVE_DPKG@ HAVE_DPKGBUILD = @HAVE_DPKGBUILD@ +HAVE_MAKEPKG = @HAVE_MAKEPKG@ +HAVE_PACMAN = @HAVE_PACMAN@ HAVE_RPM = @HAVE_RPM@ HAVE_RPMBUILD = @HAVE_RPMBUILD@ INSTALL = @INSTALL@ @@ -114,6 +116,8 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MAKEPKG = @MAKEPKG@ +MAKEPKG_VERSION = @MAKEPKG_VERSION@ MKDIR_P = @MKDIR_P@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -127,6 +131,8 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ +PACMAN = @PACMAN@ +PACMAN_VERSION = @PACMAN_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ RANLIB = @RANLIB@ RPM = @RPM@ |