build fixed for deb and rpm
This commit is contained in:
@@ -230,6 +230,7 @@ AC_DEFUN([AX_CHECK_QT], [
|
|||||||
AC_SUBST(CXXFLAGS)
|
AC_SUBST(CXXFLAGS)
|
||||||
AC_SUBST(PKG_REQUIREMENTS)
|
AC_SUBST(PKG_REQUIREMENTS)
|
||||||
AX_ADDITIONAL_QT_RULES_HACK='
|
AX_ADDITIONAL_QT_RULES_HACK='
|
||||||
|
#### Begin: Appended by $0
|
||||||
|
|
||||||
LANGUAGE_FILE_BASE ?= translations
|
LANGUAGE_FILE_BASE ?= translations
|
||||||
|
|
||||||
@@ -241,7 +242,6 @@ moc_%.cxx: %.hxx
|
|||||||
|
|
||||||
qrc_%.cxx: %.qrc
|
qrc_%.cxx: %.qrc
|
||||||
$(RCC) -o [$][@] -name ${<:%.qrc=%} $<
|
$(RCC) -o [$][@] -name ${<:%.qrc=%} $<
|
||||||
AC_SUBST(AX_ADDITIONAL_QT_RULES_HACK)
|
|
||||||
|
|
||||||
#%.qrc: %
|
#%.qrc: %
|
||||||
# cwd=$$(pwd) && cd $< && $(RCC) -project -o $${cwd}/[$][@]
|
# cwd=$$(pwd) && cd $< && $(RCC) -project -o $${cwd}/[$][@]
|
||||||
@@ -249,12 +249,15 @@ qrc_%.cxx: %.qrc
|
|||||||
%.qm: %.ts
|
%.qm: %.ts
|
||||||
${LRELEASE} $< -qm [$][@]
|
${LRELEASE} $< -qm [$][@]
|
||||||
|
|
||||||
%.ts: ${LANGUAGE_FILES:%=%}
|
%.ts: ${LANGUAGE_FILES}
|
||||||
${LUPDATE} -no-obsolete \
|
${LUPDATE} -no-obsolete \
|
||||||
-target-language ${@:${LANGUAGE_FILE_BASE}_%.ts=%} \
|
-target-language [$]{@:${LANGUAGE_FILE_BASE}_%.ts=%} \
|
||||||
-ts [$][@] $<
|
[$][^] \
|
||||||
|
-ts [$][@]
|
||||||
|
|
||||||
'])
|
#### End: $0
|
||||||
|
'
|
||||||
|
])
|
||||||
|
|
||||||
AC_DEFUN([AX_REQUIRE_QT], [
|
AC_DEFUN([AX_REQUIRE_QT], [
|
||||||
AX_CHECK_QT([$1], [$2], [$3], [$4])
|
AX_CHECK_QT([$1], [$2], [$3], [$4])
|
||||||
@@ -269,3 +272,11 @@ AC_DEFUN([AX_REQUIRE_QT], [
|
|||||||
AC_DEFUN([AX_QT_NO_KEYWORDS], [
|
AC_DEFUN([AX_QT_NO_KEYWORDS], [
|
||||||
CPPFLAGS+=" -DQT_NO_KEYWORDS"
|
CPPFLAGS+=" -DQT_NO_KEYWORDS"
|
||||||
])
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([AX_INIT_QT], [
|
||||||
|
test -f src/makefile.in && cat >> src/makefile.in <<EOF
|
||||||
|
#### HERE
|
||||||
|
${AX_ADDITIONAL_QT_RULES_HACK}
|
||||||
|
#### WE ARE
|
||||||
|
EOF
|
||||||
|
])
|
||||||
|
@@ -13,12 +13,12 @@ m4_define(x_least, m4_ifdef([x_least_fix], [x_least_fix],
|
|||||||
mrw_esyscmd_s([
|
mrw_esyscmd_s([
|
||||||
VCS_REVISION="ERROR-UNDEFINED-REVISION-to-be-built-in-subdirectory-of-checkout"
|
VCS_REVISION="ERROR-UNDEFINED-REVISION-to-be-built-in-subdirectory-of-checkout"
|
||||||
for path in . .. ../.. ../../..; do
|
for path in . .. ../.. ../../..; do
|
||||||
if test -d .svn; then
|
if test -d ${path}/.svn; then
|
||||||
svn upgrade 1>&2 > /dev/null || true
|
(cd $path; svn upgrade 1>&2 > /dev/null || true)
|
||||||
VCS_REVISION=$(LANG= svn info $path | sed -n 's/Last Changed Rev: //p')
|
VCS_REVISION=$(LANG= svn info $path | sed -n 's/Last Changed Rev: //p')
|
||||||
if test -n "${VCS_REVISION}"; then break; fi
|
if test -n "${VCS_REVISION}"; then break; fi
|
||||||
elif test -d .git; then
|
elif test -d ${path}/.git; then
|
||||||
VCS_REVISION=$(git rev-list --all --count)
|
VCS_REVISION=$(cd ${path} > /dev/null 2/dev/null; git rev-list --all --count)
|
||||||
if test -n "${VCS_REVISION}"; then break; fi
|
if test -n "${VCS_REVISION}"; then break; fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@@ -26,12 +26,12 @@ m4_define(x_least, m4_ifdef([x_least_fix], [x_least_fix],
|
|||||||
]), mrw_esyscmd_s([
|
]), mrw_esyscmd_s([
|
||||||
VCS_REVISION="ERROR-UNDEFINED-REVISION-to-be-built-in-subdirectory-of-checkout"
|
VCS_REVISION="ERROR-UNDEFINED-REVISION-to-be-built-in-subdirectory-of-checkout"
|
||||||
for path in . .. ../.. ../../..; do
|
for path in . .. ../.. ../../..; do
|
||||||
if test -d .svn; then
|
if test -d ${path}/.svn; then
|
||||||
svn upgrade 1>&2 > /dev/null || true
|
(cd $path; svn upgrade 1>&2 > /dev/null || true)
|
||||||
VCS_REVISION=$(LANG= svn info $path | sed -n 's/Last Changed Rev: //p')
|
VCS_REVISION=$(LANG= svn info $path | sed -n 's/Last Changed Rev: //p')
|
||||||
if test -n "${VCS_REVISION}"; then break; fi
|
if test -n "${VCS_REVISION}"; then break; fi
|
||||||
elif test -d .git; then
|
elif test -d ${path}/.git; then
|
||||||
VCS_REVISION=$(git rev-list --all --count)
|
VCS_REVISION=$(cd ${path} > /dev/null 2/dev/null; git rev-list --all --count)
|
||||||
if test -n "${VCS_REVISION}"; then break; fi
|
if test -n "${VCS_REVISION}"; then break; fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@@ -44,12 +44,12 @@ m4_define(x_least, m4_ifdef([x_least_fix], [x_least_fix],
|
|||||||
m4_define(x_minor_diff, m4_ifdef([x_least_fix], 0, mrw_esyscmd_s([
|
m4_define(x_minor_diff, m4_ifdef([x_least_fix], 0, mrw_esyscmd_s([
|
||||||
VCS_REVISION="ERROR-UNDEFINED-REVISION-to-be-built-in-subdirectory-of-checkout"
|
VCS_REVISION="ERROR-UNDEFINED-REVISION-to-be-built-in-subdirectory-of-checkout"
|
||||||
for path in . .. ../.. ../../..; do
|
for path in . .. ../.. ../../..; do
|
||||||
if test -d .svn; then
|
if test -d ${path}/.svn; then
|
||||||
svn upgrade 1>&2 > /dev/null || true
|
(cd $path; svn upgrade 1>&2 > /dev/null || true)
|
||||||
VCS_REVISION=$(LANG= svn info $path | sed -n 's/Last Changed Rev: //p')
|
VCS_REVISION=$(LANG= svn info $path | sed -n 's/Last Changed Rev: //p')
|
||||||
if test -n "${VCS_REVISION}"; then break; fi
|
if test -n "${VCS_REVISION}"; then break; fi
|
||||||
elif test -d .git; then
|
elif test -d ${path}/.git; then
|
||||||
VCS_REVISION=$(git rev-list --all --count)
|
VCS_REVISION=$(cd ${path} > /dev/null 2/dev/null; git rev-list --all --count)
|
||||||
if test -n "${VCS_REVISION}"; then break; fi
|
if test -n "${VCS_REVISION}"; then break; fi
|
||||||
fi;
|
fi;
|
||||||
done
|
done
|
||||||
@@ -137,6 +137,8 @@ AC_DEFUN([AX_INIT_STANDARD_PROJECT], [
|
|||||||
AX_SUBST(PREFIX)
|
AX_SUBST(PREFIX)
|
||||||
SYSCONFDIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${sysconfdir}")
|
SYSCONFDIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${sysconfdir}")
|
||||||
AX_SUBST(SYSCONFDIR)
|
AX_SUBST(SYSCONFDIR)
|
||||||
|
PKGSYSCONFDIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${SYSCONFDIR}/${PACKAGE_NAME}")
|
||||||
|
AX_SUBST(PKGSYSCONFDIR)
|
||||||
DATADIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${datadir}")
|
DATADIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${datadir}")
|
||||||
AX_SUBST(DATADIR)
|
AX_SUBST(DATADIR)
|
||||||
PKGDATADIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${DATADIR}/${PACKAGE_NAME}")
|
PKGDATADIR=$(test "$prefix" = NONE && prefix=$ac_default_prefix; eval echo "${DATADIR}/${PACKAGE_NAME}")
|
||||||
@@ -223,6 +225,9 @@ AC_DEFUN([AX_INIT_STANDARD_PROJECT], [
|
|||||||
VENDOR=$((lsb_release -is 2>/dev/null || echo unknown) | tr ' ' '_')
|
VENDOR=$((lsb_release -is 2>/dev/null || echo unknown) | tr ' ' '_')
|
||||||
AX_SUBST(VENDOR)
|
AX_SUBST(VENDOR)
|
||||||
DISTRO=$(lsb_release -sc 2>/dev/null || uname -s 2>/dev/null)
|
DISTRO=$(lsb_release -sc 2>/dev/null || uname -s 2>/dev/null)
|
||||||
|
if test "${DISTRO}" = "n/a"; then
|
||||||
|
DISTRO="${VENDOR}_$(lsb_release -sr 2>/dev/null | tr ' ' '_')"
|
||||||
|
fi
|
||||||
AX_SUBST(DISTRO)
|
AX_SUBST(DISTRO)
|
||||||
ARCH=$((@<:@@<:@ $(uname -sm) =~ 64 @:>@@:>@ && echo amd64) || (@<:@@<:@ $(uname -sm) =~ 'i?86' @:>@@:>@ && echo i386 || uname -sm))
|
ARCH=$((@<:@@<:@ $(uname -sm) =~ 64 @:>@@:>@ && echo amd64) || (@<:@@<:@ $(uname -sm) =~ 'i?86' @:>@@:>@ && echo i386 || uname -sm))
|
||||||
AX_SUBST(ARCH)
|
AX_SUBST(ARCH)
|
||||||
@@ -498,6 +503,12 @@ maintainer-clean-html-targets:
|
|||||||
EOF
|
EOF
|
||||||
])
|
])
|
||||||
|
|
||||||
|
# use this in configure.ac to support HTML data for webservers
|
||||||
|
AC_DEFUN([AX_BUILD_HTML_NPM], [
|
||||||
|
AC_CONFIG_FILES([html/package.json])
|
||||||
|
AX_BUILD_HTML
|
||||||
|
])
|
||||||
|
|
||||||
# use this in configure.ac to support C++ libraries
|
# use this in configure.ac to support C++ libraries
|
||||||
AC_DEFUN([AX_USE_LIBTOOL], [
|
AC_DEFUN([AX_USE_LIBTOOL], [
|
||||||
# libtool versioning
|
# libtool versioning
|
||||||
@@ -562,7 +573,7 @@ AC_DEFUN([AX_USE_RPM_PACKAGING], [
|
|||||||
EXTRA_DIST += \${PACKAGE_NAME}.spec.in
|
EXTRA_DIST += \${PACKAGE_NAME}.spec.in
|
||||||
rpm: dist
|
rpm: dist
|
||||||
rpmbuild -ba --define "_topdir \$\$(pwd)" --define "_sourcedir \$\$(pwd)" \${PACKAGE_NAME}.spec
|
rpmbuild -ba --define "_topdir \$\$(pwd)" --define "_sourcedir \$\$(pwd)" \${PACKAGE_NAME}.spec
|
||||||
rpmsign --define "_gpg_name \${PACKAGER}" --addsign RPMS/*/*.rpm SRPMS/*.rpm
|
./rpmsign.exp "\${PACKAGER}" "\{PASSWORD}" RPMS/*/*.rpm SRPMS/*.rpm
|
||||||
clean-rpm-targets:
|
clean-rpm-targets:
|
||||||
-rm -rf BUILD BUILDROOT RPMS SPECS SRPMS
|
-rm -rf BUILD BUILDROOT RPMS SPECS SRPMS
|
||||||
distclean-rpm-targets:
|
distclean-rpm-targets:
|
||||||
@@ -571,6 +582,11 @@ distclean-rpm-targets:
|
|||||||
EOF
|
EOF
|
||||||
])
|
])
|
||||||
|
|
||||||
|
# use this in configure.ac to support scripts, e.g. bash scripts
|
||||||
|
AC_DEFUN([AX_USE_ETC], [
|
||||||
|
AC_CONFIG_FILES([etc/makefile])
|
||||||
|
])
|
||||||
|
|
||||||
# use this in configure.ac to support scripts, e.g. bash scripts
|
# use this in configure.ac to support scripts, e.g. bash scripts
|
||||||
AC_DEFUN([AX_USE_SCRIPTS], [
|
AC_DEFUN([AX_USE_SCRIPTS], [
|
||||||
AC_CONFIG_FILES([scripts/makefile])
|
AC_CONFIG_FILES([scripts/makefile])
|
||||||
@@ -581,7 +597,7 @@ AC_DEFUN([AX_USE_DOXYGEN], [
|
|||||||
AC_CHECK_PROG(have_doxygen, doxygen, yes, no)
|
AC_CHECK_PROG(have_doxygen, doxygen, yes, no)
|
||||||
AC_CHECK_PROG(have_dot, dot, yes, no)
|
AC_CHECK_PROG(have_dot, dot, yes, no)
|
||||||
AC_CHECK_PROG(have_mscgen, mscgen, yes, no)
|
AC_CHECK_PROG(have_mscgen, mscgen, yes, no)
|
||||||
AM_CONDITIONAL(NEED_PLANTUML, test "$have_doxygen" = "yes" -a "1.8.11" != $((echo "1.8.11"; doxygen -v) | sort -V | head -1))
|
AM_CONDITIONAL(NEED_PLANTUML, test "$have_doxygen" = "yes" -a "1.8.11" != $((echo "1.8.11"; doxygen -v 2>/dev/null) | sort -V | head -1))
|
||||||
PDF_DOC=${PACKAGE_NAME}-${PACKAGE_VERSION}.pdf
|
PDF_DOC=${PACKAGE_NAME}-${PACKAGE_VERSION}.pdf
|
||||||
AC_SUBST(PDF_DOC)
|
AC_SUBST(PDF_DOC)
|
||||||
if test "$have_doxygen" = "no"; then
|
if test "$have_doxygen" = "no"; then
|
||||||
@@ -701,6 +717,13 @@ EOF
|
|||||||
# $4 = alternative module names (space separated, optional)
|
# $4 = alternative module names (space separated, optional)
|
||||||
# $5 = optional flags:
|
# $5 = optional flags:
|
||||||
# manualflags if CXXFLAGS, CPPFLAGS, LIBS should remain unchanged
|
# manualflags if CXXFLAGS, CPPFLAGS, LIBS should remain unchanged
|
||||||
|
# $6 = optional parameters, allowed are (evaluated in this order):
|
||||||
|
# - DEV_RPM_DIST_PKG=<name>
|
||||||
|
# special name for the RPM development package
|
||||||
|
# - DEV_DEB_DIST_PKG=<name>
|
||||||
|
# special name for the debian development package
|
||||||
|
# - DEV_DIST_PKG=<name>
|
||||||
|
# if the name of the development package is different
|
||||||
#
|
#
|
||||||
# uses PKG_CHECK_MODULES to test for a module
|
# uses PKG_CHECK_MODULES to test for a module
|
||||||
# then, if given, looks for the header file
|
# then, if given, looks for the header file
|
||||||
@@ -710,6 +733,7 @@ EOF
|
|||||||
AC_DEFUN([AX_PKG_REQUIRE], [
|
AC_DEFUN([AX_PKG_REQUIRE], [
|
||||||
PKG_PROG_PKG_CONFIG
|
PKG_PROG_PKG_CONFIG
|
||||||
optional_flags="$5"
|
optional_flags="$5"
|
||||||
|
$6
|
||||||
$1_found=no
|
$1_found=no
|
||||||
secondpar="m4_default([$2], [$1])"
|
secondpar="m4_default([$2], [$1])"
|
||||||
PKG_CHECK_MODULES([$1], [m4_default([$2], [$1])], [
|
PKG_CHECK_MODULES([$1], [m4_default([$2], [$1])], [
|
||||||
@@ -789,6 +813,8 @@ AC_DEFUN([AX_PKG_REQUIRE], [
|
|||||||
AC_MSG_ERROR([Feature $1 not found please install module $secondpar])
|
AC_MSG_ERROR([Feature $1 not found please install module $secondpar])
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
AX_DEB_BUILD_DEPEND([${DEV_DEB_DIST_PKG:-${DEV_DIST_PKG:-${$1_found}}-dev}])
|
||||||
|
AX_RPM_BUILD_DEPEND([${DEV_RPM_DIST_PKG:-${DEV-DIST_PKG:-${$1_found}}-devel}])
|
||||||
[$1]_CPPFLAGS="${$1_CFLAGS}"
|
[$1]_CPPFLAGS="${$1_CFLAGS}"
|
||||||
[$1]_CXXFLAGS="${$1_CFLAGS}"
|
[$1]_CXXFLAGS="${$1_CFLAGS}"
|
||||||
AC_SUBST([$1]_CPPFLAGS)
|
AC_SUBST([$1]_CPPFLAGS)
|
||||||
@@ -809,12 +835,20 @@ AC_DEFUN([AX_PKG_REQUIRE], [
|
|||||||
# $2 = module name (optional, if different from id)
|
# $2 = module name (optional, if different from id)
|
||||||
# $3 = optional flags:
|
# $3 = optional flags:
|
||||||
# manualflags if CXXFLAGS, CPPFLAGS, LIBS should remain unchanged
|
# manualflags if CXXFLAGS, CPPFLAGS, LIBS should remain unchanged
|
||||||
|
# $4 = optional parameters, allowed are (evaluated in this order):
|
||||||
|
# - DEV_RPM_DIST_PKG=<name>
|
||||||
|
# special name for the RPM development package
|
||||||
|
# - DEV_DEB_DIST_PKG=<name>
|
||||||
|
# special name for the debian development package
|
||||||
|
# - DEV_DIST_PKG=<name>
|
||||||
|
# if the name of the development package is different
|
||||||
#
|
#
|
||||||
# uses PKG_CHECK_MODULES to test for a module
|
# uses PKG_CHECK_MODULES to test for a module
|
||||||
# sets automake conditional HAVE_$1 to 0 (not found) or 1 (found)
|
# sets automake conditional HAVE_$1 to 0 (not found) or 1 (found)
|
||||||
# sets all flags, so that the module can be used everywhere
|
# sets all flags, so that the module can be used everywhere
|
||||||
AC_DEFUN([AX_PKG_CHECK], [
|
AC_DEFUN([AX_PKG_CHECK], [
|
||||||
optional_flags="$3"
|
optional_flags="$3"
|
||||||
|
$4
|
||||||
PKG_PROG_PKG_CONFIG
|
PKG_PROG_PKG_CONFIG
|
||||||
PKG_CHECK_MODULES([$1], [m4_default([$2], [$1])], [
|
PKG_CHECK_MODULES([$1], [m4_default([$2], [$1])], [
|
||||||
HAVE_$1=1
|
HAVE_$1=1
|
||||||
@@ -838,6 +872,8 @@ AC_DEFUN([AX_PKG_CHECK], [
|
|||||||
], [
|
], [
|
||||||
HAVE_$1=0
|
HAVE_$1=0
|
||||||
])
|
])
|
||||||
|
AX_DEB_BUILD_DEPEND([${DEV_DEB_DIST_PKG:-${DEV_DIST_PKG:-m4_default([$2], [$1])}-dev}])
|
||||||
|
AX_RPM_BUILD_DEPEND([${DEV_RPM_DIST_PKG:-${DEV-DIST_PKG:-m4_default([$2], [$1])}-devel}])
|
||||||
AM_CONDITIONAL(HAVE_$1, test $HAVE_[$1] -eq 1)
|
AM_CONDITIONAL(HAVE_$1, test $HAVE_[$1] -eq 1)
|
||||||
AC_SUBST(HAVE_$1)
|
AC_SUBST(HAVE_$1)
|
||||||
AC_SUBST(CPPFLAGS)
|
AC_SUBST(CPPFLAGS)
|
||||||
@@ -1005,3 +1041,127 @@ AC_DEFUN([AX_DEB_RESOLVE], [
|
|||||||
AC_SUBST(DEB_SECTION)
|
AC_SUBST(DEB_SECTION)
|
||||||
AC_SUBST(DEB_DEPEND_IFEXISTS)
|
AC_SUBST(DEB_DEPEND_IFEXISTS)
|
||||||
])
|
])
|
||||||
|
|
||||||
|
# Check if a package exists in the current distribution, if yes, require it
|
||||||
|
# in .spec.in append @RPM_DEPEND_IFEXISTS@ to Build-Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_RPM_DEPEND_IFEXISTS], [
|
||||||
|
pkg="$1"
|
||||||
|
|
||||||
|
if (test -x /usr/bin/zypper && zypper search -x "$pkg" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/bin/dnf && dnf list -q "$pkg" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/bin/yum && yum list -q "$pkg" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/sbin/urpmq && urpmq "$pkg" 1>&2 > /dev/null); then
|
||||||
|
RPM_DEPEND_IFEXISTS="${RPM_DEPEND_IFEXISTS}, ${pkg}"
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
# require package in .spec.in append @RPM_BUILD_DEPEND@ to Build-Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_RPM_BUILD_DEPEND], [
|
||||||
|
pkg="$1"
|
||||||
|
RPM_BUILD_DEPEND="${RPM_BUILD_DEPEND}, ${pkg}"
|
||||||
|
])
|
||||||
|
|
||||||
|
# require package in .spec.in append @RPM_DEPEND@ to Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_RPM_DEPEND], [
|
||||||
|
pkg="$1"
|
||||||
|
if test -z "${RPM_DEPEND}"; then
|
||||||
|
RPM_DEPEND="${pkg}"
|
||||||
|
else
|
||||||
|
RPM_DEPEND="${RPM_DEPEND}, ${pkg}"
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
# require package in debian/control.in append @DEB_DEPEND@ to Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_RPM_GROUP], [
|
||||||
|
pkg="$1"
|
||||||
|
RPM_GROUP="${pkg}"
|
||||||
|
])
|
||||||
|
|
||||||
|
# call after setting rpmian dependencies
|
||||||
|
AC_DEFUN([AX_RPM_RESOLVE], [
|
||||||
|
AC_SUBST(RPM_BUILD_DEPEND)
|
||||||
|
AC_SUBST(RPM_DEPEND)
|
||||||
|
AC_SUBST(RPM_GROUP)
|
||||||
|
AC_SUBST(RPM_DEPEND_IFEXISTS)
|
||||||
|
])
|
||||||
|
|
||||||
|
# Check if a package exists in the current distribution, if yes, require it
|
||||||
|
# in .spec.in append @ALL_DEPEND_IFEXISTS@ to Build-Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_ALL_DEPEND_IFEXISTS], [
|
||||||
|
pkg="$1"
|
||||||
|
if test -n "$(apt-cache policy -q ${pkg} 2> /dev/null)"; then
|
||||||
|
DEB_DEPEND_IFEXISTS="${DEB_DEPEND_IFEXISTS}, ${pkg}"
|
||||||
|
fi
|
||||||
|
if (test -x /usr/bin/zypper && zypper search -x "$pkg" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/bin/dnf && dnf list -q "$pkg" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/bin/yum && yum list -q "$pkg" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/sbin/urpmq && urpmq "$pkg" 1>&2 > /dev/null); then
|
||||||
|
RPM_DEPEND_IFEXISTS="${RPM_DEPEND_IFEXISTS}, ${pkg}"
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
# Check if a package exists in the current distribution, if yes, require it
|
||||||
|
# in .spec.in append @ALL_DEPEND_IFEXISTS@ to Build-Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_ALL_DEPEND_IFEXISTS_DEV], [
|
||||||
|
pkg="$1"
|
||||||
|
if test -n "$(apt-cache policy -q ${pkg}-dev 2> /dev/null)"; then
|
||||||
|
DEB_DEPEND_IFEXISTS="${DEB_DEPEND_IFEXISTS}, ${pkg}-dev"
|
||||||
|
fi
|
||||||
|
if (test -x /usr/bin/zypper && zypper search -x "$pkg"-devel 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/bin/dnf && dnf list -q "$pkg"-devel 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/bin/yum && yum list -q "$pkg"-devel 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/sbin/urpmq && urpmq "$pkg"-devel 1>&2 > /dev/null); then
|
||||||
|
RPM_DEPEND_IFEXISTS="${RPM_DEPEND_IFEXISTS}, ${pkg}-devel"
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
# require package in .spec.in append @ALL_BUILD_DEPEND@ to Build-Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_ALL_BUILD_DEPEND], [
|
||||||
|
pkg="$1"
|
||||||
|
DEB_BUILD_DEPEND="${DEB_BUILD_DEPEND}, ${pkg}"
|
||||||
|
RPM_BUILD_DEPEND="${RPM_BUILD_DEPEND}, ${pkg}"
|
||||||
|
])
|
||||||
|
|
||||||
|
# require package in .spec.in append @ALL_BUILD_DEPEND@ to Build-Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_ALL_BUILD_DEPEND_DEV], [
|
||||||
|
pkg="$1"
|
||||||
|
DEB_BUILD_DEPEND="${DEB_BUILD_DEPEND}, ${pkg// /-dev}-dev"
|
||||||
|
RPM_BUILD_DEPEND="${RPM_BUILD_DEPEND}, ${pkg// /-devel}-devel"
|
||||||
|
])
|
||||||
|
|
||||||
|
# require package in .spec.in append @ALL_DEPEND@ to Depends
|
||||||
|
# - parameter:
|
||||||
|
# $1 = package name
|
||||||
|
AC_DEFUN([AX_ALL_DEPEND], [
|
||||||
|
pkg="$1"
|
||||||
|
DEB_DEPEND="${DEB_DEPEND}, ${pkg}"
|
||||||
|
if test -z "${RPM_DEPEND}"; then
|
||||||
|
RPM_DEPEND="${pkg}"
|
||||||
|
else
|
||||||
|
RPM_DEPEND="${RPM_DEPEND}, ${pkg}"
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
# finish configuration - to be called instead of AC_OUTPUT
|
||||||
|
AC_DEFUN([AX_OUTPUT], [
|
||||||
|
AX_DEB_RESOLVE
|
||||||
|
AX_RPM_RESOLVE
|
||||||
|
AC_OUTPUT
|
||||||
|
AX_INIT_QT
|
||||||
|
])
|
||||||
|
229
bootstrap.sh
229
bootstrap.sh
@@ -134,6 +134,7 @@ GENERATED FILES
|
|||||||
* resolve-rpmbuilddeps.sh - script to install RPM package dependencies
|
* resolve-rpmbuilddeps.sh - script to install RPM package dependencies
|
||||||
* build-in-docker.sh - script to build the project encapsulated in a docker container
|
* build-in-docker.sh - script to build the project encapsulated in a docker container
|
||||||
* build-in-docker.conf - additional configuration for build-in-docker.sh
|
* build-in-docker.conf - additional configuration for build-in-docker.sh
|
||||||
|
* rpmsign.exp - script for signing rpms unattended
|
||||||
* build-resource-file.sh - build resource.qrc file from a resource directory
|
* build-resource-file.sh - build resource.qrc file from a resource directory
|
||||||
* sql-to-dot.sed - script to convert SQL schema files to graphviz dot in doxygen
|
* sql-to-dot.sed - script to convert SQL schema files to graphviz dot in doxygen
|
||||||
* mac-create-app-bundle.sh - script to create apple mac os-x app-bundle
|
* mac-create-app-bundle.sh - script to create apple mac os-x app-bundle
|
||||||
@@ -147,7 +148,9 @@ GENERATED FILES
|
|||||||
* src/makefile.am - if you enabled AX_USE_CXX
|
* src/makefile.am - if you enabled AX_USE_CXX
|
||||||
* src/version.hxx - if you enabled AX_USE_CXX
|
* src/version.hxx - if you enabled AX_USE_CXX
|
||||||
* src/version.cxx - if you enabled AX_USE_CXX
|
* src/version.cxx - if you enabled AX_USE_CXX
|
||||||
* html/makefile.am - if you enabled AX_BUILD_HTML
|
* etc/makefile.am - if you enable AX_USE_ETC
|
||||||
|
* html/makefile.am - if you enabled AX_BUILD_HTML or AX_BUILD_HTML_NPM
|
||||||
|
* html/package.json.in - if you enabled AX_BUILD_HTML_NPM
|
||||||
* scripts/makefile.am - if you enabled AX_USE_SCRIPTS
|
* scripts/makefile.am - if you enabled AX_USE_SCRIPTS
|
||||||
* nodejs/makefile.am - if you add AX_USE_NODEJS
|
* nodejs/makefile.am - if you add AX_USE_NODEJS
|
||||||
* nodejs/${DEFAULT_PROJECT_NAME}.js - if you add AX_USE_NODEJS
|
* nodejs/${DEFAULT_PROJECT_NAME}.js - if you add AX_USE_NODEJS
|
||||||
@@ -222,7 +225,7 @@ FILE DEPENDENCIES
|
|||||||
configuration a dependent, i.e.:
|
configuration a dependent, i.e.:
|
||||||
|
|
||||||
* test/makefile.am depends on AX_USE_LIBTOOL
|
* test/makefile.am depends on AX_USE_LIBTOOL
|
||||||
* html/makefile.am depends on AX_BUILD_HTML
|
* html/makefile.am depends on AX_BUILD_HTML or AX_BUILD_HTML_NPM
|
||||||
* doc/doxyfile.in depends on AX_BUILD_EXAMPLES
|
* doc/doxyfile.in depends on AX_BUILD_EXAMPLES
|
||||||
* debian/control.in depends on AX_USE_DOXYGEN, AX_USE_PERLDOC,
|
* debian/control.in depends on AX_USE_DOXYGEN, AX_USE_PERLDOC,
|
||||||
AX_USE_CPPUNIT AX_CXX_QT, AX_CHECK_QT, AX_REQUIRE_QT, AX_USE_LIBTOOL
|
AX_USE_CPPUNIT AX_CXX_QT, AX_CHECK_QT, AX_REQUIRE_QT, AX_USE_LIBTOOL
|
||||||
@@ -256,6 +259,7 @@ FILES
|
|||||||
number. In git, git rev-list --all --count is used.
|
number. In git, git rev-list --all --count is used.
|
||||||
The following macros are supported in configure.ac:
|
The following macros are supported in configure.ac:
|
||||||
* Enable C++: AX_USE_CXX
|
* Enable C++: AX_USE_CXX
|
||||||
|
* Enable system config files in /etc: AX_USE_ETC
|
||||||
* Enable LibTool library creation: AX_USE_LIBTOOL
|
* Enable LibTool library creation: AX_USE_LIBTOOL
|
||||||
* Enable Scripts: AX_USE_SCRIPTS
|
* Enable Scripts: AX_USE_SCRIPTS
|
||||||
* Enable NodeJS project: AX_USE_NODEJS
|
* Enable NodeJS project: AX_USE_NODEJS
|
||||||
@@ -299,17 +303,22 @@ done
|
|||||||
echo -en "\e[1m-> checking:\e[0m for version control system ..."
|
echo -en "\e[1m-> checking:\e[0m for version control system ..."
|
||||||
VCS=""
|
VCS=""
|
||||||
VCSDEPENDS=""
|
VCSDEPENDS=""
|
||||||
if test -d .svn; then
|
for path in . .. ../.. ../../..; do
|
||||||
|
if test -d ${path}/.svn; then
|
||||||
VCS="svn"
|
VCS="svn"
|
||||||
VCSDEPENDS_DEB="svn2cl, subversion, subversion-tools,"
|
VCSDEPENDS_DEB="svn2cl, subversion, subversion-tools,"
|
||||||
VCSDEPENDS_RPM="subversion, "
|
VCSDEPENDS_RPM="subversion, "
|
||||||
echo -e " \e[32msuccess\e[0m detected ${VCS}"
|
echo -e " \e[32msuccess\e[0m detected ${VCS}"
|
||||||
elif test -d .git; then
|
break
|
||||||
|
elif test -d ${path}/.git; then
|
||||||
VCS="git"
|
VCS="git"
|
||||||
VCSDEPENDS_DEB="git2cl, git,"
|
VCSDEPENDS_DEB="git2cl, git,"
|
||||||
VCSDEPENDS_RPM="git, "
|
VCSDEPENDS_RPM="git, "
|
||||||
echo -e " \e[32msuccess\e[0m detected ${VCS}"
|
echo -e " \e[32msuccess\e[0m detected ${VCS}"
|
||||||
else
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if test -z "$VCS"; then
|
||||||
echo -e " \e[33mignored\e[0m"
|
echo -e " \e[33mignored\e[0m"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -372,7 +381,7 @@ run() {
|
|||||||
|
|
||||||
testtag() {
|
testtag() {
|
||||||
local IFS="|"
|
local IFS="|"
|
||||||
egrep -q '^ *'"($*)" configure.ac
|
egrep -q '^ *'"($*)"' *(\(.*)? *$' configure.ac
|
||||||
}
|
}
|
||||||
|
|
||||||
contains() {
|
contains() {
|
||||||
@@ -536,6 +545,7 @@ copy makefile_test.inc.am
|
|||||||
copy resolve-debbuilddeps.sh
|
copy resolve-debbuilddeps.sh
|
||||||
copy resolve-rpmbuilddeps.sh
|
copy resolve-rpmbuilddeps.sh
|
||||||
copy build-in-docker.sh
|
copy build-in-docker.sh
|
||||||
|
copy rpmsign.exp
|
||||||
copy build-resource-file.sh
|
copy build-resource-file.sh
|
||||||
copy sql-to-dot.sed
|
copy sql-to-dot.sed
|
||||||
copy mac-create-app-bundle.sh
|
copy mac-create-app-bundle.sh
|
||||||
@@ -569,6 +579,7 @@ AX_INIT_STANDARD_PROJECT
|
|||||||
|
|
||||||
# requirements, uncomment, what you need:
|
# requirements, uncomment, what you need:
|
||||||
#AX_USE_CXX
|
#AX_USE_CXX
|
||||||
|
#AX_USE_ETC
|
||||||
#AX_USE_LIBTOOL
|
#AX_USE_LIBTOOL
|
||||||
#AX_USE_SCRIPTS
|
#AX_USE_SCRIPTS
|
||||||
#AX_USE_NODEJS
|
#AX_USE_NODEJS
|
||||||
@@ -580,6 +591,7 @@ AX_INIT_STANDARD_PROJECT
|
|||||||
#AX_BUILD_TEST
|
#AX_BUILD_TEST
|
||||||
#AX_BUILD_EXAMPLES
|
#AX_BUILD_EXAMPLES
|
||||||
#AX_BUILD_HTML
|
#AX_BUILD_HTML
|
||||||
|
#AX_BUILD_HTML_NPM
|
||||||
|
|
||||||
# qt features, uncomment, what you need:
|
# qt features, uncomment, what you need:
|
||||||
#AX_CHECK_QT([QT], [QtCore QtGui QtNetwork], [QtWidgets])
|
#AX_CHECK_QT([QT], [QtCore QtGui QtNetwork], [QtWidgets])
|
||||||
@@ -587,7 +599,7 @@ AX_INIT_STANDARD_PROJECT
|
|||||||
#AX_QT_NO_KEYWORDS
|
#AX_QT_NO_KEYWORDS
|
||||||
|
|
||||||
# create output
|
# create output
|
||||||
AC_OUTPUT
|
AX_OUTPUT
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
PACKAGE_NAME=$(sed -n 's/.*m4_define *( *x_package_name *, *\([^ ]*\) *).*/\1/p' configure.ac)
|
PACKAGE_NAME=$(sed -n 's/.*m4_define *( *x_package_name *, *\([^ ]*\) *).*/\1/p' configure.ac)
|
||||||
@@ -627,7 +639,7 @@ LANGUAGE_FILE_BASE = ${PACKAGE_NAME}
|
|||||||
QT_PLUGINS = iconengines imageformats platforms
|
QT_PLUGINS = iconengines imageformats platforms
|
||||||
|
|
||||||
#### enable if you deliver a KDE/Gnome desktop file
|
#### enable if you deliver a KDE/Gnome desktop file
|
||||||
#applicationsdir = ${datarootdir}/applications
|
#applicationsdir = \${datarootdir}/applications
|
||||||
#dist_applications_DATA = ${PACKAGE_NAME}.desktop
|
#dist_applications_DATA = ${PACKAGE_NAME}.desktop
|
||||||
|
|
||||||
#### enable (ev. instead of bin_PROGRAMS) if you build a library
|
#### enable (ev. instead of bin_PROGRAMS) if you build a library
|
||||||
@@ -664,25 +676,26 @@ ${PACKAGE_NAME//-/_}_TR_FILES = main.cxx version.cxx
|
|||||||
${PACKAGE_NAME//-/_}_SOURCES = \${${PACKAGE_NAME//-/_}_TR_FILES} \${BUILT_SOURCES}
|
${PACKAGE_NAME//-/_}_SOURCES = \${${PACKAGE_NAME//-/_}_TR_FILES} \${BUILT_SOURCES}
|
||||||
|
|
||||||
## automatic assembly, no need to change
|
## automatic assembly, no need to change
|
||||||
BUILT_SOURCES = \${${PACKAGE_NAME//-/_}_MOCFILES} \
|
BUILT_SOURCES = \${${PACKAGE_NAME//-/_}_MOCFILES} \\
|
||||||
\${${PACKAGE_NAME//-/_}_UIFILES} \
|
\${${PACKAGE_NAME//-/_}_UIFILES} \\
|
||||||
\${${PACKAGE_NAME//-/_}_TRANSLATIONS} \
|
\${${PACKAGE_NAME//-/_}_TRANSLATIONS} \\
|
||||||
\${${PACKAGE_NAME//-/_}_RESOURCES}
|
\${${PACKAGE_NAME//-/_}_RESOURCES}
|
||||||
|
|
||||||
## automatic assembly, no need to change
|
## automatic assembly, no need to change
|
||||||
EXTRA_DIST_TR = \${${PACKAGE_NAME//-/_}_MOCFILES:moc_%.cxx=%.hxx} \
|
EXTRA_DIST_TR = \${${PACKAGE_NAME//-/_}_MOCFILES:moc_%.cxx=%.hxx} \\
|
||||||
\${${PACKAGE_NAME//-/_}_UIFILES:ui_%.hxx=%.ui}
|
\${${PACKAGE_NAME//-/_}_UIFILES:ui_%.hxx=%.ui}
|
||||||
|
|
||||||
## automatic assembly, no need to change
|
## automatic assembly, no need to change
|
||||||
## except: adapt the pre-delivered qt_%.qm list (language files you copy from qt
|
## except: adapt the pre-delivered qt_%.qm list (language files you copy from qt
|
||||||
EXTRA_DIST = \${EXTRA_DIST_TR} \
|
EXTRA_DIST = \${EXTRA_DIST_TR} \\
|
||||||
\${${PACKAGE_NAME//-/_}_RESOURCES:qrc_%.cxx:%.qrc} \
|
\${${PACKAGE_NAME//-/_}_RESOURCES:qrc_%.cxx=%.qrc} \\
|
||||||
\${${PACKAGE_NAME//-/_}_TRANSLATIONS:%.qm=%.ts} \
|
\${${PACKAGE_NAME//-/_}_TRANSLATIONS:%.qm=%.ts} \\
|
||||||
qt_de.qm qt_fr.qm
|
qt_de.qm qt_fr.qm
|
||||||
|
|
||||||
## automatic assembly, no need to change
|
## automatic assembly, no need to change
|
||||||
LANGUAGE_FILES = \${EXTRA_DIST_TR} \${${PACKAGE_NAME//-/_}_TR_FILES}
|
LANGUAGE_FILES = \${EXTRA_DIST_TR} \${${PACKAGE_NAME//-/_}_TR_FILES}
|
||||||
|
|
||||||
|
CLEANFILES = \${${PACKAGE_NAME//-/_}_RESOURCES}
|
||||||
MAINTAINERCLEANFILES = makefile.in
|
MAINTAINERCLEANFILES = makefile.in
|
||||||
EOF
|
EOF
|
||||||
to --condition AX_USE_CXX src/main.cxx <<EOF
|
to --condition AX_USE_CXX src/main.cxx <<EOF
|
||||||
@@ -859,6 +872,13 @@ namespace NAMESPACE {
|
|||||||
const std::string IDENT("\$Id: " PACKAGE_STRING);
|
const std::string IDENT("\$Id: " PACKAGE_STRING);
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
|
to --condition AX_USE_ETC etc/makefile.am <<EOF
|
||||||
|
${HEADER}pkgsysconfdir = \${sysconfdir}/@PACKAGE_NAME@
|
||||||
|
|
||||||
|
dist_pkgsysconf_DATA =
|
||||||
|
|
||||||
|
MAINTAINERCLEANFILES = makefile.in
|
||||||
|
EOF
|
||||||
to --condition AX_USE_SCRIPTS scripts/makefile.am <<EOF
|
to --condition AX_USE_SCRIPTS scripts/makefile.am <<EOF
|
||||||
${HEADER}dist_bin_SCRIPTS =
|
${HEADER}dist_bin_SCRIPTS =
|
||||||
|
|
||||||
@@ -1071,7 +1091,9 @@ to --condition AX_USE_NODEJS nodejs/etc/systemd/system/${PACKAGE_NAME}.service <
|
|||||||
Description=$(head -1 README)
|
Description=$(head -1 README)
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/bin/nodejs /usr/share/${PACKAGE_NAME}/nodejs/${PACKAGE_NAME} > /var/log/${PACKAGE_NAME}.log
|
ExecStart=/usr/bin/nodejs /usr/share/${PACKAGE_NAME}/nodejs/${PACKAGE_NAME}
|
||||||
|
StandardOutput=journal
|
||||||
|
StandardError=journal
|
||||||
Restart=on-abort
|
Restart=on-abort
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
@@ -1268,13 +1290,64 @@ ${HEADER}AM_CPPFLAGS = -I\${top_srcdir}/src -I\${top_builddir}/src
|
|||||||
AM_LDFLAGS = -L\${abs_top_builddir}/src/.libs
|
AM_LDFLAGS = -L\${abs_top_builddir}/src/.libs
|
||||||
LDADD = -l${PACKAGE_NAME#lib}
|
LDADD = -l${PACKAGE_NAME#lib}
|
||||||
|
|
||||||
|
exampledir = ${docdir}/examples
|
||||||
|
example_DATA =
|
||||||
|
|
||||||
MAINTAINERCLEANFILES = makefile.in
|
MAINTAINERCLEANFILES = makefile.in
|
||||||
EOF
|
EOF
|
||||||
to --condition AX_BUILD_HTML html/makefile.am <<EOF
|
to --condition AX_BUILD_HTML_NPM html/package.json.in <<EOF
|
||||||
${HEADER}EXTRA_DIST = \${www_DATA}
|
{
|
||||||
|
"name": "@PACKAGE_NAME@",
|
||||||
|
"version": "@PACKAGE_VERSION@",
|
||||||
|
"private": true,
|
||||||
|
"dependencies": {
|
||||||
|
},
|
||||||
|
"description": "@DESCRIPTION@",
|
||||||
|
"devDependencies": {},
|
||||||
|
"scripts": {
|
||||||
|
"test": "echo \"Error: no test specified\" && exit 1"
|
||||||
|
},
|
||||||
|
"author": "@AUTHOR@",
|
||||||
|
"license": "@LICENSE@",
|
||||||
|
"path": {
|
||||||
|
"prefix": "@PREFIX@",
|
||||||
|
"sysconf": "@SYSCONFDIR@",
|
||||||
|
"pkgdata": "@PKGDATADIR@",
|
||||||
|
"localstate": "@LOCALSTATEDIR@",
|
||||||
|
"log": "@LOCALSTATEDIR@/log/@PACKAGE_NAME@.log",
|
||||||
|
"config": "@SYSCONFDIR@/@PACKAGE_NAME@.json",
|
||||||
|
"nodejs": "@PKGDATADIR@/nodejs"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
to --condition 'AX_BUILD_HTML|AX_BUILD_HTML_NPM' html/makefile.am <<EOF
|
||||||
|
${HEADER}EXTRA_DIST = $(testtag AX_BUILD_HTML_NPM && echo "package.json.in")
|
||||||
|
|
||||||
wwwdir = \${pkgdatadir}/html
|
wwwdir = \${pkgdatadir}/html
|
||||||
www_DATA =
|
www_DATA = $(testtag AX_BUILD_HTML_NPM && echo "package.json")
|
||||||
|
dist_www_DATA =
|
||||||
|
|
||||||
|
$(if testtag AX_BUILD_HTML_NPM; then
|
||||||
|
cat<<EOF2
|
||||||
|
|
||||||
|
all: node_modules
|
||||||
|
|
||||||
|
node_modules: package.json.in
|
||||||
|
HOME=. npm install
|
||||||
|
|
||||||
|
clean-local:
|
||||||
|
-rm -r node_modules .npm
|
||||||
|
|
||||||
|
install-data-hook:
|
||||||
|
test -d \$(DESTDIR)\${wwwdir} || mkdir -p \$(DESTDIR)\${wwwdir}
|
||||||
|
chmod -R u+w \$(DESTDIR)\${wwwdir}
|
||||||
|
cp -r . \$(DESTDIR)\${wwwdir}
|
||||||
|
|
||||||
|
uninstall-local:
|
||||||
|
-chmod -R u+w \$(DESTDIR)\${wwwdir}
|
||||||
|
-rm -rf \$(DESTDIR)\${wwwdir}
|
||||||
|
EOF2
|
||||||
|
fi)
|
||||||
|
|
||||||
MAINTAINERCLEANFILES = makefile.in
|
MAINTAINERCLEANFILES = makefile.in
|
||||||
EOF
|
EOF
|
||||||
@@ -1490,7 +1563,7 @@ $( if testtag AX_USE_LIBTOOL; then
|
|||||||
Package: @PACKAGE_NAME@-dev
|
Package: @PACKAGE_NAME@-dev
|
||||||
Section: libdevel
|
Section: libdevel
|
||||||
Architecture: any
|
Architecture: any
|
||||||
Depends: @PACKAGE_NAME@ (= \${binary:Version}), ${BUILD_DEPENDS}${RUN_DEPENDS} @DEB_DEPEND@ @DEB_BUILD_DEPEND@ @DEB_DEPEND_IFEXISTS@
|
Depends: @PACKAGE_NAME@ (= \${binary:Version}), ${BUILD_DEPENDS}${RUN_DEPENDS} @DEB_BUILD_DEPEND@ @DEB_DEPEND_IFEXISTS@
|
||||||
Description: @DESCRIPTION@ - Development Package
|
Description: @DESCRIPTION@ - Development Package
|
||||||
@README_DEB@
|
@README_DEB@
|
||||||
EOF2
|
EOF2
|
||||||
@@ -1533,71 +1606,59 @@ to --condition AX_USE_RPM_PACKAGING ${PACKAGE_NAME}.spec.in <<EOF
|
|||||||
Summary: @DESCRIPTION@
|
Summary: @DESCRIPTION@
|
||||||
Name: @PACKAGE_NAME@
|
Name: @PACKAGE_NAME@
|
||||||
Version: @VERSION@
|
Version: @VERSION@
|
||||||
Release: @BUILD_NUMBER@%{?dist}
|
Release: @BUILD_NUMBER@.@DISTRO@
|
||||||
License: LGPL
|
License: LGPL
|
||||||
Group: $(if testtag AX_USE_LIBTOOL; then
|
Group: $(if testtag AX_USE_LIBTOOL; then
|
||||||
echo Development/Libraries/C++;
|
echo Development/Libraries/C++;
|
||||||
else
|
else
|
||||||
echo Applications/...;
|
echo @RPM_GROUP@;
|
||||||
fi)
|
fi)
|
||||||
|
$(if testtag AX_RPM_DEPEND; then echo "Requires: @RPM_DEPEND@"; fi)
|
||||||
Source0: %{name}-%{version}.tar.gz
|
Source0: %{name}-%{version}.tar.gz
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
||||||
BuildRequires: gnupg, ${VCSDEPENDS_RPM} make, automake, autoconf, rpm-build$(
|
BuildRequires: which, pkgconfig, gnupg, expect, ${VCSDEPENDS_RPM}make, automake, autoconf, rpm-build$(
|
||||||
if testtag AX_USE_CXX; then
|
if testtag AX_USE_CXX; then
|
||||||
echo -n ", binutils-devel, gcc-c++"
|
echo -n ", binutils-devel, gcc-c++"
|
||||||
fi
|
fi
|
||||||
if testtag AX_USE_LIBTOOL; then
|
if testtag AX_USE_CPPUNIT; then
|
||||||
echo -n ", libtool";
|
echo -n ", cppunit-devel"
|
||||||
fi
|
fi
|
||||||
if testtag AX_USE_DOXYGEN; then
|
if testtag AX_USE_DOXYGEN; then
|
||||||
echo -n ", doxygen, java-openjdk";
|
echo -n ", doxygen, graphviz, java-openjdk";
|
||||||
fi
|
fi
|
||||||
if testtag AX_USE_PERLDOC; then
|
if testtag AX_USE_PERLDOC; then
|
||||||
echo -n ", libpod-tree-perl";
|
echo -n ", libpod-tree-perl";
|
||||||
fi
|
fi
|
||||||
)
|
if testtag AX_REQUIRE_QT || testtag AX_CHECK_QT AX_REQUIRE_QT; then
|
||||||
%if 0%{?fedora} != 20
|
echo -n ", qt-devel, libqt5-qtbase-devel, libqt5-qttools, libQt5WebKit5-devel";
|
||||||
$(if testtag AX_USE_DOXYGEN; then echo -n "BuildRequires: graphviz"; fi)
|
|
||||||
%endif
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} || 0%{?rhl} || 0%{?centos} || 0%{?centos_ver} || 0%{?centos_version} || 0%{?mageia}
|
|
||||||
BuildRequires: which, pkgconfig$(
|
|
||||||
if testtag AX_USE_LIBTOOL; then
|
|
||||||
echo -n ", cppunit-devel"
|
|
||||||
fi
|
fi
|
||||||
)
|
) @RPM_BUILD_DEPEND@ @RPM_DEPEND_IFEXISTS@
|
||||||
%if 0%{?rhel} > 6 || 0%{?rhl} > 6 || 0%{?centos} > 6 || 0%{?fedora} || 0%{?mageia}
|
|
||||||
BuildRequires: rpm-sign
|
#### os dependent definitions ####
|
||||||
%endif
|
%if 0%{?suse_version} || 0%{?sles_version}
|
||||||
|
BuildRequires: lsb-release
|
||||||
|
%else
|
||||||
%if 0%{?mageia}
|
%if 0%{?mageia}
|
||||||
BuildRequires: gnupg, lsb-release$(
|
BuildRequires: rpm-sign, lsb-release
|
||||||
if testtag AX_USE_LIBTOOL; then
|
|
||||||
echo -n ", libltdl-devel"
|
|
||||||
fi
|
|
||||||
)
|
|
||||||
%else
|
%else
|
||||||
BuildRequires: gpg, redhat-lsb$(
|
BuildRequires: rpm-sign, redhat-lsb
|
||||||
if testtag AX_USE_LIBTOOL; then
|
%endif
|
||||||
echo -n ", libtool-ltdl-devel"
|
%endif
|
||||||
|
$(
|
||||||
|
if testtag AX_USE_DOXYGEN; then cat <<EOS
|
||||||
|
%if ! 0%{?centos}
|
||||||
|
BuildRequires: mscgen
|
||||||
|
%endif
|
||||||
|
EOS
|
||||||
fi
|
fi
|
||||||
)
|
if testtag AX_USE_LIBTOOL; then cat <<EOS
|
||||||
%endif
|
%if 0%{?mageia}
|
||||||
%if ! ( 0%{?centos} || 0%{?centos_ver} || 0%{?centos_version} )
|
BuildRequires: libtool, libltdl-devel
|
||||||
$(if testtag AX_USE_DOXYGEN; then echo -n "BuildRequires: mscgen"; fi)
|
|
||||||
$(if testtag AX_REQUIRE_QT || testtag AX_CHECK_QT AX_REQUIRE_QT; then echo -n "BuildRequires: qt5-qtbase-devel, qt5-qttools, qt5-qtwebkit-devel"; fi)
|
|
||||||
%else
|
%else
|
||||||
$(if testtag AX_REQUIRE_QT || testtag AX_CHECK_QT AX_REQUIRE_QT; then echo -n "BuildRequires: qt-devel"; fi)
|
BuildRequires: libtool, libtool-ltdl-devel
|
||||||
%endif
|
%endif
|
||||||
%else%if 0%{?suse_version} || 0%{?sles_version}
|
EOS
|
||||||
BuildRequires: pkg-config, lsb-release$(
|
|
||||||
if testtag AX_USE_CPPUNIT; then
|
|
||||||
echo -n ", libcppunit-devel";
|
|
||||||
fi)
|
fi)
|
||||||
%if 0%{?suse_version} < 1200 || 0%{?sles_version} < 1200
|
|
||||||
$(if testtag AX_REQUIRE_QT || testtag AX_CHECK_QT AX_REQUIRE_QT; then echo -n "BuildRequires: libqt4-devel, qt4-x11-tools, libQtWebKit-devel"; fi)
|
|
||||||
%else
|
|
||||||
$(if testtag AX_REQUIRE_QT || testtag AX_CHECK_QT AX_REQUIRE_QT; then echo -n "BuildRequires: libqt5-qtbase-devel, libqt5-qttools, libQt5WebKit5-devel"; fi)
|
|
||||||
%endif
|
|
||||||
%endif%endif
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@README@
|
@README@
|
||||||
@@ -1628,12 +1689,14 @@ rm -rf \$RPM_BUILD_ROOT
|
|||||||
%files
|
%files
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
$(if testtag AX_USE_LIBTOOL; then
|
$(if testtag AX_USE_LIBTOOL; then
|
||||||
echo '/usr/%_lib/@PACKAGE_NAME@.so.*'
|
echo '/usr/%_lib/*.so.*'
|
||||||
else
|
else
|
||||||
echo '/usr/bin/*'
|
echo '/usr/bin/*'
|
||||||
echo '/usr/share/applications/*'
|
echo '/usr/share/applications/*'
|
||||||
fi)
|
fi)
|
||||||
/usr/share/@PACKAGE_NAME@
|
$(if testtag AX_USE_NODEJS AX_BUILD_HTML AX_BUILD_HTML_NPM; then
|
||||||
|
echo '/usr/share/@PACKAGE_NAME@'
|
||||||
|
fi)
|
||||||
%doc
|
%doc
|
||||||
$(if testtag AX_USE_LIBTOOL; then
|
$(if testtag AX_USE_LIBTOOL; then
|
||||||
cat <<EOF2
|
cat <<EOF2
|
||||||
@@ -1645,7 +1708,7 @@ $(if testtag AX_USE_LIBTOOL; then
|
|||||||
/usr/share/doc/packages/@PACKAGE_NAME@/README
|
/usr/share/doc/packages/@PACKAGE_NAME@/README
|
||||||
EOF2
|
EOF2
|
||||||
else
|
else
|
||||||
echo '/usr/share/doc/packages/@PACKAGE_NAME@'
|
echo '/usr/share'
|
||||||
fi)
|
fi)
|
||||||
|
|
||||||
$(if testtag AX_USE_LIBTOOL; then
|
$(if testtag AX_USE_LIBTOOL; then
|
||||||
@@ -1653,7 +1716,7 @@ cat <<EOF2
|
|||||||
%package devel
|
%package devel
|
||||||
Summary: @DESCRIPTION@
|
Summary: @DESCRIPTION@
|
||||||
Group: Development/Libraries/C++
|
Group: Development/Libraries/C++
|
||||||
Requires: @PACKAGE_NAME@ = @VERSION@
|
Requires: @PACKAGE_NAME@ = @VERSION@ @RPM_BUILD_DEPEND@
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
@README@
|
@README@
|
||||||
@@ -1662,14 +1725,18 @@ This Package contains all files required for developement.
|
|||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
/usr/%_lib/@PACKAGE_NAME@.so
|
/usr/%_lib/*.so
|
||||||
/usr/%_lib/@PACKAGE_NAME@.a
|
/usr/%_lib/*.a
|
||||||
/usr/%_lib/@PACKAGE_NAME@.la
|
/usr/%_lib/*.la
|
||||||
/usr/%_lib/pkgconfig
|
/usr/%_lib/pkgconfig
|
||||||
/usr/include/*
|
/usr/include/*
|
||||||
%doc
|
%doc
|
||||||
/usr/share/@PACKAGE_NAME@
|
$(if testtag AX_USE_DOXYGEN AX_USE_PERLDOC; then
|
||||||
/usr/share/doc/packages/@PACKAGE_NAME@/html
|
echo '/usr/share/doc/packages/@PACKAGE_NAME@/html'
|
||||||
|
fi)
|
||||||
|
$(if testtag AX_BUILD_EXAMPLES; then
|
||||||
|
echo '/usr/share/doc/packages/@PACKAGE_NAME@/examples'
|
||||||
|
fi)
|
||||||
EOF2
|
EOF2
|
||||||
fi)
|
fi)
|
||||||
|
|
||||||
@@ -1680,6 +1747,9 @@ SUBDIRS=""
|
|||||||
if testtag AX_USE_CXX; then
|
if testtag AX_USE_CXX; then
|
||||||
SUBDIRS="${SUBDIRS} src"
|
SUBDIRS="${SUBDIRS} src"
|
||||||
fi
|
fi
|
||||||
|
if testtag AX_USE_ETC; then
|
||||||
|
SUBDIRS="${SUBDIRS} etc"
|
||||||
|
fi
|
||||||
if testtag AX_BUILD_TEST AX_USE_CPPUNIT; then
|
if testtag AX_BUILD_TEST AX_USE_CPPUNIT; then
|
||||||
SUBDIRS="${SUBDIRS} test"
|
SUBDIRS="${SUBDIRS} test"
|
||||||
fi
|
fi
|
||||||
@@ -1745,21 +1815,23 @@ Requires: @PKG_REQUIREMENTS@
|
|||||||
EOF
|
EOF
|
||||||
to build-in-docker.conf <<EOF
|
to build-in-docker.conf <<EOF
|
||||||
${HEADER}# Use Ubuntu Universe Repository
|
${HEADER}# Use Ubuntu Universe Repository
|
||||||
repos+=("Ubuntu:::universe")
|
repos+=("ubuntu:::universe")
|
||||||
|
|
||||||
# Use Marc Wäckerlin's Repository, see https://dev.marc.waeckerlin.org
|
# Use Marc Wäckerlin's Repository, see https://dev.marc.waeckerlin.org
|
||||||
repos+=("Debian|Ubuntu:::https://dev.marc.waeckerlin.org/repository")
|
repos+=("debian|ubuntu:::https://dev.marc.waeckerlin.org/repository:::https://dev.marc.waeckerlin.org/repository/@DISTRIBUTOR@/marc-waeckerlin.repo")
|
||||||
repos+=("openSUSE:::https://dev.marc.waeckerlin.org/repository/opensuse/marc-waeckerlin.repo")
|
|
||||||
repos+=("Fedora:::https://dev.marc.waeckerlin.org/repository/fedora/marc-waeckerlin.repo")
|
|
||||||
repos+=("CentOS:::https://dev.marc.waeckerlin.org/repository/centos/marc-waeckerlin.repo")
|
|
||||||
keys+=("https://dev.marc.waeckerlin.org/repository/PublicKey")
|
keys+=("https://dev.marc.waeckerlin.org/repository/PublicKey")
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
#### Cleanup If Makefile Exists ####
|
#### Cleanup If Makefile Exists ####
|
||||||
if test -f makefile; then
|
if test -f makefile; then
|
||||||
run --no-check make distclean
|
run --no-check make maintainer-clean
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#### Build In Docker If User Requires ####
|
||||||
|
if test "$docker" -eq 1; then
|
||||||
|
./build-in-docker.sh $buildtarget $* || exit 1
|
||||||
|
else
|
||||||
|
|
||||||
#### Bootstrap Before Configure ####
|
#### Bootstrap Before Configure ####
|
||||||
run --no-check vcs2cl
|
run --no-check vcs2cl
|
||||||
run aclocal
|
run aclocal
|
||||||
@@ -1777,7 +1849,4 @@ if test "$build" -eq 1; then
|
|||||||
make $buildtarget || exit 1
|
make $buildtarget || exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#### Build In Docker If User Requires ####
|
|
||||||
if test "$docker" -eq 1; then
|
|
||||||
./build-in-docker.sh || exit 1
|
|
||||||
fi
|
fi
|
||||||
|
@@ -2,18 +2,15 @@
|
|||||||
##
|
##
|
||||||
## This file has been added:
|
## This file has been added:
|
||||||
## - by bootstrap.sh
|
## - by bootstrap.sh
|
||||||
## - on Thu, 02 February 2017 17:50:21 +0100
|
## - on Fri, 02 June 2017 14:11:41 +0200
|
||||||
## Feel free to change it or even remove and rebuild it, up to your needs
|
## Feel free to change it or even remove and rebuild it, up to your needs
|
||||||
##
|
##
|
||||||
## 1 2 3 4 5 6 7 8
|
## 1 2 3 4 5 6 7 8
|
||||||
## 45678901234567890123456789012345678901234567890123456789012345678901234567890
|
## 45678901234567890123456789012345678901234567890123456789012345678901234567890
|
||||||
|
|
||||||
# Use Ubuntu Universe Repository
|
# Use Ubuntu Universe Repository
|
||||||
repos+=("Ubuntu:::universe")
|
repos+=("ubuntu:::universe")
|
||||||
|
|
||||||
# Use Marc Wäckerlin's Repository, see https://dev.marc.waeckerlin.org
|
# Use Marc Wäckerlin's Repository, see https://dev.marc.waeckerlin.org
|
||||||
repos+=("Debian|Ubuntu:::https://dev.marc.waeckerlin.org/repository")
|
repos+=("debian|ubuntu:::https://dev.marc.waeckerlin.org/repository:::https://dev.marc.waeckerlin.org/repository/@DISTRIBUTOR@/marc-waeckerlin.repo")
|
||||||
repos+=("openSUSE:::https://dev.marc.waeckerlin.org/repository/opensuse/marc-waeckerlin.repo")
|
|
||||||
repos+=("Fedora:::https://dev.marc.waeckerlin.org/repository/fedora/marc-waeckerlin.repo")
|
|
||||||
repos+=("CentOS:::https://dev.marc.waeckerlin.org/repository/centos/marc-waeckerlin.repo")
|
|
||||||
keys+=("https://dev.marc.waeckerlin.org/repository/PublicKey")
|
keys+=("https://dev.marc.waeckerlin.org/repository/PublicKey")
|
||||||
|
@@ -7,7 +7,7 @@ if test "${arch}" = "amd64"; then
|
|||||||
myarch="amd64|i386"
|
myarch="amd64|i386"
|
||||||
fi
|
fi
|
||||||
mode="deb"
|
mode="deb"
|
||||||
img="ubuntu:latest"
|
img="mwaeckerlin/ubuntu:latest"
|
||||||
repos=()
|
repos=()
|
||||||
keys=()
|
keys=()
|
||||||
envs=("-e LANG=${LANG}" "-e HOME=${HOME}" "-e TERM=xterm" "-e DEBIAN_FRONTEND=noninteractive" "-e DEBCONF_NONINTERACTIVE_SEEN=true")
|
envs=("-e LANG=${LANG}" "-e HOME=${HOME}" "-e TERM=xterm" "-e DEBIAN_FRONTEND=noninteractive" "-e DEBCONF_NONINTERACTIVE_SEEN=true")
|
||||||
@@ -82,11 +82,16 @@ while test $# -gt 0; do
|
|||||||
(-m|--mode) shift;
|
(-m|--mode) shift;
|
||||||
mode="$1"
|
mode="$1"
|
||||||
case "$mode" in
|
case "$mode" in
|
||||||
(deb|apt) img="ubuntu:latest";;
|
(deb|apt) img="mwaeckerlin/ubuntu:latest";;
|
||||||
(rpm|zypper) img="opensuse:latest";;
|
(rpm|zypper) img="opensuse:latest";;
|
||||||
(yum) img="centos:latest";;
|
(yum) img="centos:latest";;
|
||||||
(dnf) img="fedora:latest";;
|
(dnf) img="fedora:latest";;
|
||||||
(win) img="ubuntu:latest"; host="${host:---host=i686-w64-mingw32}";;
|
(win)
|
||||||
|
img="mwaeckerlin/ubuntu:latest"; host="${host:---host=i686-w64-mingw32}"
|
||||||
|
targets="all install"
|
||||||
|
flags+=("--prefix=/workdir/usr")
|
||||||
|
packages1=("mingw-w64")
|
||||||
|
;;
|
||||||
(*)
|
(*)
|
||||||
echo "**** ERROR: unknown mode '$1', try --help" 1>&2
|
echo "**** ERROR: unknown mode '$1', try --help" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
@@ -167,7 +172,8 @@ function traperror() {
|
|||||||
echo
|
echo
|
||||||
fi
|
fi
|
||||||
if [ "$wait" -eq 1 ]; then
|
if [ "$wait" -eq 1 ]; then
|
||||||
echo " ... now you can access the docker container:"
|
echo " ... now you can access the docker container as root or user:"
|
||||||
|
echo " docker exec -it ${DOCKER_ID} bash"
|
||||||
echo " docker exec -u $(id -u) -it ${DOCKER_ID} bash"
|
echo " docker exec -u $(id -u) -it ${DOCKER_ID} bash"
|
||||||
echo -n " ... press enter to cleanup: "
|
echo -n " ... press enter to cleanup: "
|
||||||
read
|
read
|
||||||
@@ -180,12 +186,6 @@ function traperror() {
|
|||||||
exit $e
|
exit $e
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
if [ "$wait" -eq 1 ]; then
|
|
||||||
echo " ... now you can access the docker container:"
|
|
||||||
echo " docker exec -u $(id -u) -it ${DOCKER_ID} bash"
|
|
||||||
echo -n " ... press enter to cleanup: "
|
|
||||||
read
|
|
||||||
fi
|
|
||||||
echo -n "SUCCESS ... cleanup docker: "
|
echo -n "SUCCESS ... cleanup docker: "
|
||||||
docker rm -f "${DOCKER_ID}"
|
docker rm -f "${DOCKER_ID}"
|
||||||
exit 0
|
exit 0
|
||||||
@@ -195,20 +195,26 @@ function ifthenelse() {
|
|||||||
arg="$1"
|
arg="$1"
|
||||||
shift
|
shift
|
||||||
cmd="$*"
|
cmd="$*"
|
||||||
|
DISTRIBUTOR=$(docker exec ${DOCKER_ID} lsb_release -si | sed 's, .*,,' | tr [:upper:] [:lower:])
|
||||||
|
CODENAME=$(docker exec ${DOCKER_ID} lsb_release -cs)
|
||||||
|
ARCH=$((docker exec ${DOCKER_ID} which dpkg > /dev/null 2> /dev/null && docker exec ${DOCKER_ID} dpkg --print-architecture) || echo amd64)
|
||||||
if test "${arg/:::/}" = "${arg}"; then
|
if test "${arg/:::/}" = "${arg}"; then
|
||||||
docker exec ${DOCKER_ID} bash -c "${cmd//ARG/${arg}}"
|
docker exec ${DOCKER_ID} bash -c "${cmd//ARG/${arg//@DISTRIBUTOR@/${DISTRIBUTOR}}}"
|
||||||
else
|
else
|
||||||
os="${arg%%:::*}"
|
os="${arg%%:::*}"
|
||||||
thenpart="${arg#*:::}"
|
thenpart="${arg#*:::}"
|
||||||
if test "${thenpart/:::/}" = "${thenpart}"; then
|
elsepart=
|
||||||
docker exec ${DOCKER_ID} bash -c 'os="'$os'"; if [[ "$(lsb_release -is)-$(lsb_release -cs)-$((which dpkg > /dev/null 2> /dev/null && dpkg --print-architecture) || echo amd64)" =~ ${os} ]]; then '"${cmd//ARG/${thenpart}}"'; fi'
|
if test "${thenpart/:::/}" != "${thenpart}"; then
|
||||||
else
|
|
||||||
elsepart="${thenpart##*:::}"
|
elsepart="${thenpart##*:::}"
|
||||||
thenpart="${thenpart%:::*}"
|
thenpart="${thenpart%%:::*}"
|
||||||
|
fi
|
||||||
|
if [[ "${DISTRIBUTOR}-${CODENAME}-${ARCH}" =~ ${os} ]]; then
|
||||||
if test -n "${thenpart}"; then
|
if test -n "${thenpart}"; then
|
||||||
docker exec ${DOCKER_ID} bash -c 'os="'$os'"; if [[ "$(lsb_release -is)-$(lsb_release -cs)-$((which dpkg > /dev/null 2> /dev/null && dpkg --print-architecture) || echo amd64)" =~ ${os} ]]; then '"${cmd//ARG/${thenpart}}"'; else '"${cmd//ARG/${elsepart}}"'; fi'
|
docker exec ${DOCKER_ID} bash -c "${cmd//ARG/${thenpart//@DISTRIBUTOR@/${DISTRIBUTOR}}}"
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
docker exec ${DOCKER_ID} bash -c 'os="'$os'"; if [[ "$(lsb_release -is)-$(lsb_release -cs)-$((which dpkg > /dev/null 2> /dev/null && dpkg --print-architecture) || echo amd64)" =~ ${os} ]]; then true; else '"${cmd//ARG/${elsepart}}"'; fi'
|
if test -n "${elsepart}"; then
|
||||||
|
docker exec ${DOCKER_ID} bash -c "${cmd//ARG/${elsepart//@DISTRIBUTOR@/${DISTRIBUTOR}}}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@@ -231,7 +237,7 @@ if ! docker exec ${DOCKER_ID} getent passwd $(id -u) > /dev/null 2>&1; then
|
|||||||
fi
|
fi
|
||||||
docker exec ${DOCKER_ID} chown $(id -u):$(id -g) "${HOME}"
|
docker exec ${DOCKER_ID} chown $(id -u):$(id -g) "${HOME}"
|
||||||
case $mode in
|
case $mode in
|
||||||
(deb|apt)
|
(deb|apt|win)
|
||||||
if [[ "${img}" =~ "ubuntu" ]]; then
|
if [[ "${img}" =~ "ubuntu" ]]; then
|
||||||
docker exec ${DOCKER_ID} locale-gen ${LANG}
|
docker exec ${DOCKER_ID} locale-gen ${LANG}
|
||||||
docker exec ${DOCKER_ID} update-locale LANG=${LANG}
|
docker exec ${DOCKER_ID} update-locale LANG=${LANG}
|
||||||
@@ -277,7 +283,12 @@ gpgcheck=0
|
|||||||
EOF
|
EOF
|
||||||
fi
|
fi
|
||||||
INSTALL_TOOL=$((docker exec ${DOCKER_ID} test -x /usr/bin/zypper && echo zypper install -y) || (docker exec ${DOCKER_ID} test -x /usr/bin/dnf && echo dnf install -y) || (docker exec ${DOCKER_ID} test -x /usr/bin/yum && echo yum install -y) || (docker exec ${DOCKER_ID} test -x /usr/sbin/urpmi && echo urpmi --auto))
|
INSTALL_TOOL=$((docker exec ${DOCKER_ID} test -x /usr/bin/zypper && echo zypper install -y) || (docker exec ${DOCKER_ID} test -x /usr/bin/dnf && echo dnf install -y) || (docker exec ${DOCKER_ID} test -x /usr/bin/yum && echo yum install -y) || (docker exec ${DOCKER_ID} test -x /usr/sbin/urpmi && echo urpmi --auto))
|
||||||
docker exec ${DOCKER_ID} ${INSTALL_TOOL} rpm-build automake libtool subversion gcc-c++ pkgconfig wget /usr/bin/lsb_release
|
if test "$INSTALL_TOOL" = "urpmi --auto"; then
|
||||||
|
LSB_RELEASE=lsb-release
|
||||||
|
else
|
||||||
|
LSB_RELEASE=/usr/bin/lsb_release
|
||||||
|
fi
|
||||||
|
docker exec ${DOCKER_ID} ${INSTALL_TOOL} rpm-build automake libtool subversion gcc-c++ pkgconfig wget $LSB_RELEASE
|
||||||
i=0
|
i=0
|
||||||
for key in "${keys[@]}"; do
|
for key in "${keys[@]}"; do
|
||||||
wget -Orpm-key "$key"
|
wget -Orpm-key "$key"
|
||||||
@@ -285,20 +296,16 @@ EOF
|
|||||||
rm rpm-key
|
rm rpm-key
|
||||||
done
|
done
|
||||||
for repo in "${repos[@]}"; do
|
for repo in "${repos[@]}"; do
|
||||||
INSTALL_REPO=$((docker exec ${DOCKER_ID} test -x /usr/bin/zypper && echo zypper ar) || (docker exec ${DOCKER_ID} test -x /usr/bin/dnf && echo dnf config-manager --add-repo) || (docker exec ${DOCKER_ID} test -x /usr/bin/yum && echo wget -O/etc/yum.repos.d/additional$i.repo) || (docker exec ${DOCKER_ID} test -x /usr/sbin/urpmi && echo true))
|
INSTALL_REPO=$((docker exec ${DOCKER_ID} test -x /usr/bin/zypper && echo zypper ar) || (docker exec ${DOCKER_ID} test -x /usr/bin/dnf && echo dnf config-manager --add-repo) || (docker exec ${DOCKER_ID} test -x /usr/bin/yum && echo wget -O/etc/yum.repos.d/additional$i.repo) || (docker exec ${DOCKER_ID} test -x /usr/sbin/urpmi && echo false))
|
||||||
ifthenelse "${repo}" "${INSTALL_REPO} 'ARG'"
|
ifthenelse "${repo}" "${INSTALL_REPO} 'ARG'"
|
||||||
((++i))
|
((++i))
|
||||||
done
|
done
|
||||||
docker exec ${DOCKER_ID} ./resolve-rpmbuilddeps.sh
|
docker exec ${DOCKER_ID} ./resolve-rpmbuilddeps.sh
|
||||||
;;
|
;;
|
||||||
(win)
|
|
||||||
if [[ "${img}" =~ "ubuntu" ]]; then
|
|
||||||
docker exec ${DOCKER_ID} locale-gen ${LANG}
|
|
||||||
docker exec ${DOCKER_ID} update-locale LANG=${LANG}
|
|
||||||
fi
|
|
||||||
docker exec ${DOCKER_ID} apt-get update ${OPTIONS}
|
|
||||||
docker exec ${DOCKER_ID} apt-get install -y mingw-w64
|
|
||||||
docker exec ${DOCKER_ID} ./resolve-debbuilddeps.sh
|
|
||||||
;;
|
|
||||||
esac
|
esac
|
||||||
docker exec -u $(id -u):$(id -g) ${DOCKER_ID} ./bootstrap.sh -t "${targets}" ${host} ${flags[@]}
|
FLAGS=()
|
||||||
|
for f in "${flags[@]}"; do
|
||||||
|
FLAGS+=($(ifthenelse "$f" "echo 'ARG'"))
|
||||||
|
done
|
||||||
|
|
||||||
|
docker exec -u $(id -u):$(id -g) ${DOCKER_ID} ./bootstrap.sh -t "${targets}" ${host} "${FLAGS[@]}"
|
||||||
|
16
configure.ac
16
configure.ac
@@ -49,25 +49,19 @@ AX_CHECK_QT([QTGUI], [QtCore QtGui], [QtWidgets])
|
|||||||
AX_CHECK_QT([QTNETWORK], [Qt5Network >= 5.2])
|
AX_CHECK_QT([QTNETWORK], [Qt5Network >= 5.2])
|
||||||
CPPFLAGS="${CPPFLAGS} -DQT_NO_KEYWORDS"
|
CPPFLAGS="${CPPFLAGS} -DQT_NO_KEYWORDS"
|
||||||
|
|
||||||
AX_DEB_BUILD_DEPEND(libpkcs11-helper1-dev|libp11-kit-dev)
|
|
||||||
AX_DEB_BUILD_DEPEND(mrw-c++-dev)
|
|
||||||
AX_DEB_BUILD_DEPEND(libpcsclite-dev)
|
|
||||||
AX_DEB_BUILD_DEPEND(libssl-dev)
|
|
||||||
AX_DEB_RESOLVE
|
|
||||||
|
|
||||||
# libraries used
|
# libraries used
|
||||||
if test -z "$MINGW"; then
|
if test -z "$MINGW"; then
|
||||||
AX_PKG_REQUIRE([pcsc], [libpcsclite], [pcsclite.h])
|
AX_PKG_REQUIRE([pcsc], [libpcsclite], [pcsclite.h], [], [], [DEV_DIST_PKG=libpcsclite;DEV_RPM_DIST_PKG=pcsc-lite-devel])
|
||||||
AX_PKG_REQUIRE([pkcs11], [p11-kit-1], [pkcs11.h], [p11-kit libpkcs11-helper-1])
|
AX_PKG_REQUIRE([pkcs11], [p11-kit-1], [pkcs11.h], [p11-kit libpkcs11-helper-1 libp11], [], [DEV_DIST_PKG=pkcs11-helper;DEV_DEB_DIST_PKG=libpkcs11-helper1-dev])
|
||||||
AX_PKG_REQUIRE([ssl], [libssl], [openssl/crypto.h], [openssl])
|
AX_PKG_REQUIRE([ssl], [libssl], [openssl/crypto.h], [openssl], [], [DEV_RPM_DIST_PKG=libopenssl-devel])
|
||||||
AX_PKG_REQUIRE([crypto], [libcrypto], [openssl/crypto.h], [openssl])
|
AX_PKG_REQUIRE([crypto], [libcrypto], [openssl/crypto.h], [openssl], [], [DEV_DIST_PKG=libssl;DEV_RPM_DIST_PKG=libopenssl-devel])
|
||||||
else
|
else
|
||||||
LDFLAGS+=" -lwinscard -lssl -lcrypto"
|
LDFLAGS+=" -lwinscard -lssl -lcrypto"
|
||||||
fi
|
fi
|
||||||
AX_PKG_REQUIRE([mrwcxx], [mrw-c++], [mrw/checkcxx11.hxx])
|
AX_PKG_REQUIRE([mrwcxx], [mrw-c++], [mrw/checkcxx11.hxx])
|
||||||
|
|
||||||
# create output
|
# create output
|
||||||
AC_OUTPUT
|
AX_OUTPUT
|
||||||
|
|
||||||
if test "${HAVE_QTGUI}" -ne 1; then
|
if test "${HAVE_QTGUI}" -ne 1; then
|
||||||
AC_MSG_WARN([QtGui not found, ${HAVE_QTGUI} Qt GUI features disabled])
|
AC_MSG_WARN([QtGui not found, ${HAVE_QTGUI} Qt GUI features disabled])
|
||||||
|
2
debian/control.in
vendored
2
debian/control.in
vendored
@@ -13,6 +13,6 @@ Description: @DESCRIPTION@
|
|||||||
Package: @PACKAGE_NAME@-dev
|
Package: @PACKAGE_NAME@-dev
|
||||||
Section: libdevel
|
Section: libdevel
|
||||||
Architecture: any
|
Architecture: any
|
||||||
Depends: @PACKAGE_NAME@ (= ${binary:Version}), debhelper, fakeroot, svn2cl, subversion, subversion-tools, pkg-config, automake, libtool, autotools-dev, pandoc, lsb-release, doxygen, graphviz, mscgen, default-jre-headless|default-jre, qt5-default | libqt4-core | libqtcore4, qt5-qmake | qt4-qmake, qtbase5-dev | libqt4-dev, qtbase5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools @DEB_DEPEND@ @DEB_BUILD_DEPEND@ @DEB_DEPEND_IFEXISTS@
|
Depends: @PACKAGE_NAME@ (= ${binary:Version}), debhelper, fakeroot, svn2cl, subversion, subversion-tools, pkg-config, automake, libtool, autotools-dev, pandoc, lsb-release, doxygen, graphviz, mscgen, default-jre-headless|default-jre, qt5-default | libqt4-core | libqtcore4, qt5-qmake | qt4-qmake, qtbase5-dev | libqt4-dev, qtbase5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools @DEB_BUILD_DEPEND@ @DEB_DEPEND_IFEXISTS@
|
||||||
Description: @DESCRIPTION@ - Development Package
|
Description: @DESCRIPTION@ - Development Package
|
||||||
@README_DEB@
|
@README_DEB@
|
||||||
|
1
debian/libpcscxx-dev.install
vendored
1
debian/libpcscxx-dev.install
vendored
@@ -4,3 +4,4 @@ usr/lib/lib*.so
|
|||||||
usr/lib/pkgconfig/*
|
usr/lib/pkgconfig/*
|
||||||
usr/lib/*.la
|
usr/lib/*.la
|
||||||
usr/share/doc/libpcscxx/html
|
usr/share/doc/libpcscxx/html
|
||||||
|
usr/bin/*
|
||||||
|
@@ -3,10 +3,10 @@
|
|||||||
## 1 2 3 4 5 6 7 8
|
## 1 2 3 4 5 6 7 8
|
||||||
## 45678901234567890123456789012345678901234567890123456789012345678901234567890
|
## 45678901234567890123456789012345678901234567890123456789012345678901234567890
|
||||||
|
|
||||||
noinst_PROGRAMS = pcsc-demo cryptoki-sign-demo cryptoki-demo \
|
exampledir = ${docdir}/examples
|
||||||
|
example_PROGRAMS = pcsc-demo cryptoki-sign-demo cryptoki-demo \
|
||||||
openssl-tcp-demo openssl-ssl-demo \
|
openssl-tcp-demo openssl-ssl-demo \
|
||||||
openssl-engine-demo cardos-demo \
|
openssl-engine-demo cardos-demo create-files-demo
|
||||||
create-files-demo
|
|
||||||
|
|
||||||
AM_CPPFLAGS += -I${top_srcdir}/src
|
AM_CPPFLAGS += -I${top_srcdir}/src
|
||||||
AM_LDFLAGS = -L${top_builddir}/src -lpcscxx
|
AM_LDFLAGS = -L${top_builddir}/src -lpcscxx
|
||||||
@@ -21,9 +21,11 @@ cardos_demo_SOURCES = cardos-demo.cxx
|
|||||||
create_files_demo_SOURCES = create-files-demo.cxx
|
create_files_demo_SOURCES = create-files-demo.cxx
|
||||||
|
|
||||||
if HAVE_QTNETWORK
|
if HAVE_QTNETWORK
|
||||||
noinst_PROGRAMS += suisse-id-demo
|
example_PROGRAMS += suisse-id-demo
|
||||||
noinst_HEADERS = suisse-id-demo.hxx
|
example_HEADERS = suisse-id-demo.hxx
|
||||||
suisse_id_demo_SOURCES = suisse-id-demo.cxx
|
suisse_id_demo_SOURCES = suisse-id-demo.cxx suisse-id-demo.hxx
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
example_DATA = ${example_PROGRAMS:*=*.cxx}
|
||||||
|
|
||||||
MAINTAINERCLEANFILES = makefile.in
|
MAINTAINERCLEANFILES = makefile.in
|
||||||
|
@@ -1,35 +1,32 @@
|
|||||||
Summary: @DESCRIPTION@
|
Summary: @DESCRIPTION@
|
||||||
Name: @PACKAGE_NAME@
|
Name: @PACKAGE_NAME@
|
||||||
Version: @VERSION@
|
Version: @VERSION@
|
||||||
Release: @BUILD_NUMBER@%{?dist}
|
Release: @BUILD_NUMBER@.@DISTRO@
|
||||||
License: LGPL
|
License: LGPL
|
||||||
Group: Development/Libraries/C++
|
Group: Development/Libraries/C++
|
||||||
|
|
||||||
Source0: %{name}-%{version}.tar.gz
|
Source0: %{name}-%{version}.tar.gz
|
||||||
BuildRequires: gnupg, subversion, automake, autoconf, doxygen
|
|
||||||
%if 0%{?fedora} != 20
|
|
||||||
BuildRequires: graphviz
|
|
||||||
%endif
|
|
||||||
%if ( 0%{?suse_version} || 0%{?sles_version} ) && ( 0%{?suse_version} < 1200 || 0%{?sles_version} < 1200 )
|
|
||||||
BuildRequires: libp11-devel
|
|
||||||
%else
|
|
||||||
BuildRequires: p11-kit-devel
|
|
||||||
%endif
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
||||||
%if 0%{?fedora} || 0%{?rhel} || 0%{?rhl} || 0%{?centos} || 0%{?centos_ver} || 0%{?centos_version}
|
BuildRequires: which, pkgconfig, gnupg, expect, subversion, make, automake, autoconf, rpm-build, binutils-devel, gcc-c++, doxygen, graphviz, java-openjdk, qt-devel, libqt5-qtbase-devel, libqt5-qttools, libQt5WebKit5-devel @RPM_BUILD_DEPEND@ @RPM_DEPEND_IFEXISTS@
|
||||||
BuildRequires: pkgconfig, redhat-lsb
|
|
||||||
%if 0%{?centos} || 0%{?centos_ver} || 0%{?centos_version}
|
#### os dependent definitions ####
|
||||||
BuildRequires: qt-devel
|
%if 0%{?suse_version} || 0%{?sles_version}
|
||||||
|
BuildRequires: lsb-release
|
||||||
%else
|
%else
|
||||||
BuildRequires: mscgen, qt5-qtbase-devel, qt5-qttools, qt5-qtwebkit-devel
|
%if 0%{?mageia}
|
||||||
%endif
|
BuildRequires: rpm-sign, lsb-release
|
||||||
%else%if 0%{?suse_version} || 0%{?sles_version}
|
|
||||||
BuildRequires: pkg-config, lsb-release
|
|
||||||
%if 0%{?suse_version} < 1200 || 0%{?sles_version} < 1200
|
|
||||||
BuildRequires: libqt4-devel, qt4-x11-tools, libQtWebKit-devel
|
|
||||||
%else
|
%else
|
||||||
BuildRequires: libqt5-qtbase-devel, libqt5-qttools, libQt5WebKit5-devel
|
BuildRequires: rpm-sign, redhat-lsb
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
%if ! 0%{?centos}
|
||||||
|
BuildRequires: mscgen
|
||||||
|
%endif
|
||||||
|
%if 0%{?mageia}
|
||||||
|
BuildRequires: libtool, libltdl-devel
|
||||||
|
%else
|
||||||
|
BuildRequires: libtool, libtool-ltdl-devel
|
||||||
%endif
|
%endif
|
||||||
%endif%endif
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@README@
|
@README@
|
||||||
@@ -40,6 +37,7 @@ This package contains only the shared libraries required at runtime.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
./configure --prefix=/usr \
|
./configure --prefix=/usr \
|
||||||
|
--sysconfdir=/etc \
|
||||||
--docdir=/usr/share/doc/packages/@PACKAGE_NAME@ \
|
--docdir=/usr/share/doc/packages/@PACKAGE_NAME@ \
|
||||||
--libdir=/usr/%_lib
|
--libdir=/usr/%_lib
|
||||||
|
|
||||||
@@ -54,8 +52,8 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
/usr/%_lib/@PACKAGE_NAME@.so.*
|
/usr/%_lib/*.so.*
|
||||||
/usr/bin/*
|
|
||||||
%doc
|
%doc
|
||||||
/usr/share/doc/packages/@PACKAGE_NAME@/AUTHORS
|
/usr/share/doc/packages/@PACKAGE_NAME@/AUTHORS
|
||||||
/usr/share/doc/packages/@PACKAGE_NAME@/COPYING
|
/usr/share/doc/packages/@PACKAGE_NAME@/COPYING
|
||||||
@@ -67,7 +65,7 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%package devel
|
%package devel
|
||||||
Summary: @DESCRIPTION@
|
Summary: @DESCRIPTION@
|
||||||
Group: Development/Libraries/C++
|
Group: Development/Libraries/C++
|
||||||
Requires: @PACKAGE_NAME@ = @VERSION@
|
Requires: @PACKAGE_NAME@ = @VERSION@ @RPM_BUILD_DEPEND@
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
@README@
|
@README@
|
||||||
@@ -76,13 +74,15 @@ This Package contains all files required for developement.
|
|||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
/usr/%_lib/@PACKAGE_NAME@.so
|
/usr/bin/*
|
||||||
/usr/%_lib/@PACKAGE_NAME@.a
|
/usr/%_lib/*.so
|
||||||
/usr/%_lib/@PACKAGE_NAME@.la
|
/usr/%_lib/*.a
|
||||||
|
/usr/%_lib/*.la
|
||||||
/usr/%_lib/pkgconfig
|
/usr/%_lib/pkgconfig
|
||||||
/usr/include/*
|
/usr/include/*
|
||||||
%doc
|
%doc
|
||||||
/usr/share/doc/packages/@PACKAGE_NAME@/html
|
/usr/share/doc/packages/@PACKAGE_NAME@/html
|
||||||
|
/usr/share/doc/packages/@PACKAGE_NAME@/examples
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|
||||||
|
@@ -35,24 +35,76 @@ TO_INSTALL=
|
|||||||
DEPS=
|
DEPS=
|
||||||
|
|
||||||
if test -e debian/control.in -a ! -e debian/control; then
|
if test -e debian/control.in -a ! -e debian/control; then
|
||||||
for f in $(sed -n 's, *AX_DEB_DEPEND_IFEXISTS(\([^)]*\)).*,\1,p' configure.ac); do
|
function pkg_exists() {
|
||||||
if test -n "$(${DO} apt-cache policy -q ${f})" && ((! $(${DO} apt-cache policy ${f} 2>&1 | grep -q 'N: Unable to locate package')) && (! ${DO} dpkg -l "${f}")); then
|
test -n "$(${DO} apt-cache policy -q ${1})" \
|
||||||
|
&& ((! $(${DO} apt-cache policy ${1} 2>&1 \
|
||||||
|
| grep -q 'N: Unable to locate package')) \
|
||||||
|
&& (! ${DO} dpkg -l "${1}" 1>&2 > /dev/null))
|
||||||
|
}
|
||||||
|
function AX_PKG_CHECK() {
|
||||||
|
local DEV_DEB_DIST_PKG=
|
||||||
|
local DEV_DIST_PKG=
|
||||||
|
local pkg=
|
||||||
|
eval $4
|
||||||
|
if test -z "$2"; then
|
||||||
|
pkg=$1
|
||||||
|
else
|
||||||
|
pkg=$2
|
||||||
|
fi
|
||||||
|
pkg=${DEV_DEB_DIST_PKG:-${DEV_DIST_PKG:-${pkg}}-dev}
|
||||||
|
if pkg_exists "${pkg}"; then
|
||||||
|
echo $pkg
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
function AX_PKG_REQUIRE() {
|
||||||
|
local DEV_DEB_DIST_PKG=
|
||||||
|
local DEV_DIST_PKG=
|
||||||
|
local pkg=
|
||||||
|
eval $6
|
||||||
|
if test -z "$2"; then
|
||||||
|
pkg=$1
|
||||||
|
else
|
||||||
|
pkg=$2
|
||||||
|
fi
|
||||||
|
if test -n "$4"; then
|
||||||
|
for f in $pkg $4; do
|
||||||
|
if pkg_exists "${f}-dev"; then
|
||||||
|
pkg=$f
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
echo ${DEV_DEB_DIST_PKG:-${DEV_DIST_PKG:-${pkg}}-dev}
|
||||||
|
}
|
||||||
|
DEPS+=" $(eval $(sed -n '/^ *AX_PKG_REQUIRE/{s,^ *\(AX_PKG_REQUIRE\) *(\(.*\)).*,\1 \2,;s.\[\([^]]*\)\],\?."\1".g;s,$,;,g;p}' configure.ac))"
|
||||||
|
DEPS+=" $(eval $(sed -n '/^ *AX_PKG_CHECK/{s,^ *\(AX_PKG_CHECK\) *(\(.*\)).*,\1 \2,;s.\[\([^]]*\)\],\?."\1".g;s,$,;,g;p}' configure.ac))"
|
||||||
|
for f in $(sed -n 's, *AX_\(DEB\|ALL\)_DEPEND_IFEXISTS(\([^)]*\)).*,\2,p' configure.ac); do
|
||||||
|
if pkg_exists "${f}"; then
|
||||||
DEPS+=" ${f}"
|
DEPS+=" ${f}"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
for f in $(sed -n 's, *AX_DEB_BUILD_DEPEND(\([^)]*\)).*,\1,p' configure.ac); do
|
for f in $(sed -n 's, *AX_\(DEB\|ALL\)_DEPEND_IFEXISTS_DEV(\([^)]*\)).*,\2,p' configure.ac); do
|
||||||
|
if pkg_exists "${f}-dev"; then
|
||||||
|
DEPS+=" ${f}-dev"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
for f in $(sed -n 's, *AX_\(DEB\|ALL\)\(_BUILD\)\?_DEPEND(\([^)]*\)).*,\3,p' configure.ac); do
|
||||||
DEPS+=" ${f}"
|
DEPS+=" ${f}"
|
||||||
done
|
done
|
||||||
|
for f in $(sed -n 's, *AX_\(DEB\|ALL\)\(_BUILD\)\?_DEPEND_DEV(\([^)]*\)).*,\3,p' configure.ac); do
|
||||||
|
DEPS+=" ${f}-dev"
|
||||||
|
done
|
||||||
trap "rm debian/control" INT TERM EXIT
|
trap "rm debian/control" INT TERM EXIT
|
||||||
sed 's,@\(DEB_DEPEND_IFEXISTS\|DEB_BUILD_DEPEND\|DEB_DEPEND\)@,,g' debian/control.in | \
|
sed 's,@\(\(ALL\|DEB\)_DEPEND_IFEXISTS\|\(ALL\|DEB\)_BUILD_DEPEND\|\(ALL\|DEB\)_DEPEND\)@,,g' debian/control.in | \
|
||||||
sed 's,@[^@]*@, dummytext,g' > debian/control
|
sed 's,@[^@]*@, dummytext,g' > debian/control
|
||||||
fi
|
fi
|
||||||
|
|
||||||
install dpkg-dev
|
install dpkg-dev
|
||||||
|
|
||||||
DEPS+=" $(LANG= ${DO} dpkg-checkbuilddeps 2>&1 | sed -n '/Unmet build dependencies/ { s,.*Unmet build dependencies: ,,g; s, ([^)]*),,g; s, *| *,|,g; p}')"
|
DEPS+=" $(LANG= ${DO} dpkg-checkbuilddeps 2>&1 | sed -n '/Unmet build dependencies/ { s,.*Unmet build dependencies: ,,g; s, ([^)]*),,g; s, *| *,|,g; p}')"
|
||||||
|
|
||||||
for pa in ${DEPS}; do
|
for pa in ${DEPS}; do
|
||||||
if test ${pa//|/} = ${pa}; then
|
if test "${pa//|/}" = "${pa}"; then
|
||||||
TO_INSTALL+=" ${pa}"
|
TO_INSTALL+=" ${pa}"
|
||||||
continue;
|
continue;
|
||||||
fi
|
fi
|
||||||
|
@@ -14,11 +14,77 @@ INSTALL_TOOL=${INSTALL_TOOL:-$((test -x /usr/bin/zypper && echo zypper install -
|
|||||||
SCHROOTNAME="$1"
|
SCHROOTNAME="$1"
|
||||||
PACKAGE_NAME=$(sed -n 's/^ *m4_define(x_package_name, \(.*\)).*/\1/p' configure.ac)
|
PACKAGE_NAME=$(sed -n 's/^ *m4_define(x_package_name, \(.*\)).*/\1/p' configure.ac)
|
||||||
|
|
||||||
TRAP_CMD=
|
TRAP_CMD="sleep ${SLEEP:-0};"
|
||||||
|
DEPS=
|
||||||
|
for f in BUILD BUILDROOT RPMS SPECS SRPMS; do
|
||||||
|
if ! test -d $f; then
|
||||||
|
TRAP_CMD+="rm -rf $f;"
|
||||||
|
mkdir $f
|
||||||
|
fi
|
||||||
|
done
|
||||||
if test -e ${PACKAGE_NAME}.spec.in -a ! -e ${PACKAGE_NAME}.spec; then
|
if test -e ${PACKAGE_NAME}.spec.in -a ! -e ${PACKAGE_NAME}.spec; then
|
||||||
|
function pkg_exists() {
|
||||||
|
(test -x /usr/bin/zypper && zypper search -x "$1" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/bin/dnf && dnf list -q "$1" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/bin/yum && yum list -q "$1" 1>&2 > /dev/null) || \
|
||||||
|
(test -x /usr/sbin/urpmq && urpmq "$1" 1>&2 > /dev/null)
|
||||||
|
}
|
||||||
|
function AX_PKG_CHECK() {
|
||||||
|
local DEV_RPM_DIST_PKG=
|
||||||
|
local DEV_DIST_PKG=
|
||||||
|
local pkg=
|
||||||
|
eval $4
|
||||||
|
if test -z "$2"; then
|
||||||
|
pkg=$1
|
||||||
|
else
|
||||||
|
pkg=$2
|
||||||
|
fi
|
||||||
|
pkg=${DEV_RPM_DIST_PKG:-${DEV_DIST_PKG:-${pkg}}-devel}
|
||||||
|
if pkg_exists "${pkg}"; then
|
||||||
|
echo ${pkg}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
function AX_PKG_REQUIRE() {
|
||||||
|
local DEV_RPM_DIST_PKG=
|
||||||
|
local DEV_DIST_PKG=
|
||||||
|
local pkg=
|
||||||
|
eval $6
|
||||||
|
if test -z "$2"; then
|
||||||
|
pkg=$1
|
||||||
|
else
|
||||||
|
pkg=$2
|
||||||
|
fi
|
||||||
|
if test -n "$4"; then
|
||||||
|
for f in $pkg $4; do
|
||||||
|
if pkg_exists "${f}-devel"; then
|
||||||
|
pkg=$f
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
echo ${DEV_RPM_DIST_PKG:-${DEV_DIST_PKG:-${pkg}}-devel}
|
||||||
|
}
|
||||||
|
DEPS+=" $(eval $(sed -n '/^ *AX_PKG_REQUIRE/{s,^ *\(AX_PKG_REQUIRE\) *(\(.*\)).*,\1 \2,;s.\[\([^]]*\)\],\?."\1".g;s,$,;,g;p}' configure.ac))"
|
||||||
|
DEPS+=" $(eval $(sed -n '/^ *AX_PKG_CHECK/{s,^ *\(AX_PKG_CHECK\) *(\(.*\)).*,\1 \2,;s.\[\([^]]*\)\],\?."\1".g;s,$,;,g;p}' configure.ac))"
|
||||||
|
for f in $(sed -n 's, *AX_\(RPM\|ALL\)_DEPEND_IFEXISTS(\([^)]*\)).*,\2,p' configure.ac); do
|
||||||
|
if pkg_exists "${f}"; then
|
||||||
|
DEPS+=" ${f}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
for f in $(sed -n 's, *AX_\(RPM\|ALL\)_DEPEND_IFEXISTS_DEV(\([^)]*\)).*,\2,p' configure.ac); do
|
||||||
|
if pkg_exists "${f}-devel"; then
|
||||||
|
DEPS+=" ${f}-devel"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
for f in $(sed -n 's, *AX_\(RPM\|ALL\)\(_BUILD\)\?_DEPEND(\([^)]*\)).*,\3,p' configure.ac); do
|
||||||
|
DEPS+=" ${f}"
|
||||||
|
done
|
||||||
|
for f in $(sed -n 's, *AX_\(RPM\|ALL\)\(_BUILD\)\?_DEPEND_DEV(\([^)]*\)).*,\3,p' configure.ac); do
|
||||||
|
DEPS+=" ${f}-devel"
|
||||||
|
done
|
||||||
TRAP_CMD+="rm ${PACKAGE_NAME}.spec;"
|
TRAP_CMD+="rm ${PACKAGE_NAME}.spec;"
|
||||||
trap "${TRAP_CMD}" INT TERM EXIT
|
trap "${TRAP_CMD}" INT TERM EXIT
|
||||||
sed 's,@RPM_DEPEND_IFEXISTS@,,g' ${PACKAGE_NAME}.spec.in | \
|
sed 's,@\(\(ALL\|RPM\)_DEPEND_IFEXISTS\|\(ALL\|RPM\)_BUILD_DEPEND\|\(ALL\|RPM\)_DEPEND\)@,,g' ${PACKAGE_NAME}.spec.in | \
|
||||||
sed 's,@[^@]*@,dummytext,g' > ${PACKAGE_NAME}.spec
|
sed 's,@[^@]*@,dummytext,g' > ${PACKAGE_NAME}.spec
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -32,13 +98,14 @@ fi
|
|||||||
if test -n "${SCHROOTNAME}"; then
|
if test -n "${SCHROOTNAME}"; then
|
||||||
FILES=$(LANG= schroot -c ${SCHROOTNAME} -- rpmbuild -bb --clean --nobuild --define "_topdir ." --define "_sourcedir ." ${PACKAGE_NAME}.spec 2>&1 | sed -n 's, is needed by.*,,p')
|
FILES=$(LANG= schroot -c ${SCHROOTNAME} -- rpmbuild -bb --clean --nobuild --define "_topdir ." --define "_sourcedir ." ${PACKAGE_NAME}.spec 2>&1 | sed -n 's, is needed by.*,,p')
|
||||||
if test -n "${FILES}"; then
|
if test -n "${FILES}"; then
|
||||||
schroot -c ${SCHROOTNAME} -u root -- ${INSTALL_TOOL} ${FILES}
|
schroot -c ${SCHROOTNAME} -u root -- ${INSTALL_TOOL} ${FILES} ${DEPS}
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
FILES=$(LANG= rpmbuild -bb --clean --nobuild --define "_topdir ." --define "_sourcedir ." ${PACKAGE_NAME}.spec 2>&1 | sed -n 's, is needed by.*,,p')
|
FILES=$(LANG= rpmbuild -bb --clean --nobuild --define "_topdir ." --define "_sourcedir ." ${PACKAGE_NAME}.spec 2>&1 | sed -n 's, is needed by.*,,p')
|
||||||
if test -n "${FILES}"; then
|
if test -n "${FILES}"; then
|
||||||
${INSTALL_TOOL} ${FILES}
|
${INSTALL_TOOL} ${FILES} ${DEPS}
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
echo "**** Success: All Dependencies Resolved"
|
echo "**** Success: All Dependencies Resolved"
|
||||||
|
14
rpmsign.exp
Executable file
14
rpmsign.exp
Executable file
@@ -0,0 +1,14 @@
|
|||||||
|
#!/usr/bin/expect -f
|
||||||
|
|
||||||
|
set key [lindex $argv 0]
|
||||||
|
set password [lindex $argv 1]
|
||||||
|
set files [lrange $argv 2 end]
|
||||||
|
|
||||||
|
### rpm-sign.exp -- Sign RPMs by sending the passphrase.
|
||||||
|
spawn rpmsign --define "_gpg_name $key" --addsign {*}$files
|
||||||
|
expect {
|
||||||
|
"Enter pass phrase: " {
|
||||||
|
send -- "$password\r"
|
||||||
|
exp_continue
|
||||||
|
} eof
|
||||||
|
}
|
Reference in New Issue
Block a user