From cd9a7c5ac8336feceecc70a1f7cac6aefe5c370b Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Sun, 14 Aug 2011 05:57:37 -0500 Subject: Use autotools to build Amarok on Ubuntu and Debian --- .../amarok/debian/cdbs/debian-qt-kde.mk | 11 +++ .../lenny/applications/amarok/debian/cdbs/kde.mk | 8 +- debian/lenny/applications/amarok/debian/control | 4 +- debian/lenny/applications/amarok/debian/rules | 92 ++++++++++++++-------- 4 files changed, 77 insertions(+), 38 deletions(-) (limited to 'debian/lenny/applications/amarok') diff --git a/debian/lenny/applications/amarok/debian/cdbs/debian-qt-kde.mk b/debian/lenny/applications/amarok/debian/cdbs/debian-qt-kde.mk index 888f4be38..47e83ef4a 100644 --- a/debian/lenny/applications/amarok/debian/cdbs/debian-qt-kde.mk +++ b/debian/lenny/applications/amarok/debian/cdbs/debian-qt-kde.mk @@ -10,6 +10,9 @@ _cdbs_class_debian-qt-kde := 1 # Note: This _must_ be included before autotools.mk, or it won't work. common-configure-arch common-configure-indep:: debian/stamp-cvs-make debian/stamp-cvs-make: + cp -Rp /usr/share/aclocal/libtool.m4 admin/libtool.m4.in + cp -Rp /usr/share/libtool/config/ltmain.sh admin/ltmain.sh + $(MAKE) -C $(DEB_SRCDIR) -f admin/Makefile.common dist; touch debian/stamp-cvs-make include debian/cdbs/kde.mk$(_cdbs_makefile_suffix) @@ -93,6 +96,14 @@ binary-install/$(DEB_SOURCE_PACKAGE)-doc-html:: done clean:: + if test -n "$(DEB_KDE_CVS_MAKE)" && test -d $(DEB_SRCDIR); then \ + cd $(DEB_SRCDIR); \ + find . -name Makefile.in -print | \ + xargs --no-run-if-empty rm -f; \ + rm -f Makefile.am acinclude.m4 aclocal.m4 config.h.in \ + configure configure.files configure.in stamp-h.in \ + subdirs; \ + fi rm -f debian/stamp-cvs-make endif diff --git a/debian/lenny/applications/amarok/debian/cdbs/kde.mk b/debian/lenny/applications/amarok/debian/cdbs/kde.mk index 9dbcfbafd..5b6508f8c 100644 --- a/debian/lenny/applications/amarok/debian/cdbs/kde.mk +++ b/debian/lenny/applications/amarok/debian/cdbs/kde.mk @@ -35,7 +35,7 @@ else DEB_BUILDDIR = obj-$(DEB_BUILD_GNU_TYPE) endif -# include $(_cdbs_class_path)/autotools.mk$(_cdbs_makefile_suffix) +include $(_cdbs_class_path)/autotools.mk$(_cdbs_makefile_suffix) export kde_cgidir = \$${libdir}/cgi-bin export kde_confdir = \$${sysconfdir}/trinity @@ -59,7 +59,7 @@ endif cdbs_configure_flags += --with-qt-dir=/usr/share/qt3 --disable-rpath --with-xinerama $(cdbs_kde_enable_final) $(cdbs_kde_enable_debug) DEB_AC_AUX_DIR = $(DEB_SRCDIR)/admin -DEB_CONFIGURE_INCLUDEDIR = "\$${prefix}/include/" +DEB_CONFIGURE_INCLUDEDIR = "\$${prefix}/include/kde" DEB_COMPRESS_EXCLUDE = .dcl .docbook -license .tag .sty .el $(patsubst %,binary-install/%,$(DEB_PACKAGES)) :: binary-install/%: @@ -70,7 +70,7 @@ cleanbuilddir:: common-build-arch common-build-indep:: debian/stamp-kde-apidox debian/stamp-kde-apidox: -# $(if $(DEB_KDE_APIDOX),+$(DEB_MAKE_INVOKE) apidox) + $(if $(DEB_KDE_APIDOX),+$(DEB_MAKE_INVOKE) apidox) touch $@ common-install-prehook-impl:: @@ -82,7 +82,7 @@ common-install-prehook-impl:: common-install-arch common-install-indep:: common-install-kde-apidox common-install-kde-apidox:: -# $(if $(DEB_KDE_APIDOX),+$(DEB_MAKE_INVOKE) install-apidox DESTDIR=$(DEB_DESTDIR)) + $(if $(DEB_KDE_APIDOX),+$(DEB_MAKE_INVOKE) install-apidox DESTDIR=$(DEB_DESTDIR)) clean:: rm -f debian/stamp-kde-apidox diff --git a/debian/lenny/applications/amarok/debian/control b/debian/lenny/applications/amarok/debian/control index 7aa58f6d7..a0c2c0ebf 100644 --- a/debian/lenny/applications/amarok/debian/control +++ b/debian/lenny/applications/amarok/debian/control @@ -11,8 +11,8 @@ Build-Depends: cdbs, debhelper (>= 5.0.0), quilt, bzip2, libmysqlclient15-dev | libmysqlclient16-dev, libpq-dev, libvisual-0.4-dev, libsdl1.2-dev, libifp-dev, libusb-dev, libgpod-nogtk-dev (>= 0.4.2), libnjb-dev, libmtp-dev, - ruby, ruby1.8-dev, kdebase-trinity-dev, - libtool, libltdl-dev, cmake + ruby, ruby1.8-dev, + automake, autoconf, libtool, libltdl-dev Standards-Version: 3.8.4 Homepage: http://amarok.kde.org diff --git a/debian/lenny/applications/amarok/debian/rules b/debian/lenny/applications/amarok/debian/rules index 4fd9a743d..1e2caae64 100755 --- a/debian/lenny/applications/amarok/debian/rules +++ b/debian/lenny/applications/amarok/debian/rules @@ -1,27 +1,16 @@ #!/usr/bin/make -f -# Set LD_LIBRARY_PATH to the installed library directory to allow dh_shlibdeps to function -# Also include the main Trinity path -ifeq ("$(LD_LIBRARY_PATH)", "") -LD_LIBRARY_PATH=debian/tmp/opt/trinity/lib -else -LD_LIBRARY_PATH += :debian/tmp/opt/trinity/lib -endif -export LD_LIBRARY_PATH - +### CDBS INCLUDES include /usr/share/cdbs/1/rules/debhelper.mk -include /usr/share/cdbs/1/class/cmake.mk -include /usr/share/cdbs/1/rules/simple-patchsys.mk -include /usr/share/cdbs/1/rules/utils.mk include debian/cdbs/debian-qt-kde.mk +include /usr/share/cdbs/1/rules/patchsys-quilt.mk -DEB_CMAKE_EXTRA_FLAGS := -DLIB_SUFFIX="" -DCMAKE_INSTALL_PREFIX="/opt/trinity" -DCONFIG_INSTALL_DIR="/etc/trinity" -DSYSCONF_INSTALL_DIR="/etc/trinity" -DXDG_MENU_INSTALL_DIR="/etc/xdg/menus" -DCMAKE_LIBRARY_PATH="/opt/trinity/lib" -DCMAKE_INCLUDE_PATH="/opt/trinity/include/" -DAUTODETECT_QT_DIRS="ON" -DCMAKE_VERBOSE_MAKEFILE="ON" -DBUILD_ALL="ON" -DCMAKE_SKIP_RPATH="OFF" \ --DWITH_IFP="ON" -DWITH_NJB="ON" -DWITH_MTP="ON" -DWITH_DAAP="ON" -DWITH_YAUAP="ON" \ --DWITH_LIBVISUAL="ON" -DWITH_KONQSIDEBAR="ON" -DWITH_XINE="ON" -DWITH_IPOD="ON" +DEB_CONFIGURE_INCLUDEDIR := /opt/trinity/include/kde +DEB_CONFIGURE_MANDIR := /opt/trinity/share/man +DEB_CONFIGURE_PREFIX := /opt/trinity +DEB_CONFIGURE_INFODIR := /opt/trinity/share/info -# Honour "parallel=N" option of DEB_BUILD_OPTIONS. Comment out to -# never build in parallel, regardless of DEB_BUILD_OPTIONS. -DEB_BUILD_PARALLEL = true +cdbs_configure_flags := --with-qt-dir=/usr/share/qt3 --with-xinerama $(cdbs_kde_enable_final) $(cdbs_kde_enable_debug) ### VARIABLES # Exempt amarok engines from being handled as proper public libraries @@ -30,20 +19,20 @@ DEB_DH_MAKESHLIBS_ARGS_ALL = -Xlibamarok_\\w*-engine-trinity export KUBUNTU_DESKTOP_POT=extragear-multimedia_amarok-trinity -#DEB_CONFIGURE_EXTRA_FLAGS := --without-included-sqlite \ -# --disable-final \ -# --without-akode \ -# --without-gstreamer10 \ -# --without-libkarma \ -# --with-ifp \ -# --with-libgpod \ -# --with-libnjb \ -# --with-libmtp \ -# --enable-mysql \ -# --enable-postgresql \ -# --with-yauap \ -# --prefix=/opt/trinity \ -# --with-extra-libs=/usr/lib/mesa +DEB_CONFIGURE_EXTRA_FLAGS := --without-included-sqlite \ + --disable-final \ + --without-akode \ + --without-gstreamer10 \ + --without-libkarma \ + --with-ifp \ + --with-libgpod \ + --with-libnjb \ + --with-libmtp \ + --enable-mysql \ + --enable-postgresql \ + --with-yauap \ + --prefix=/opt/trinity \ + --with-extra-libs=/usr/lib/mesa # Ship upstream README in amarok docs DEB_INSTALL_DOCS_ALL = @@ -54,6 +43,45 @@ DEB_INSTALL_DOCS_amarok-trinity = $(DEB_SRCDIR)/README DEB_DH_SHLIBDEPS_ARGS_amarok-engine-xine-trinity = -- -xamarok-trinity DEB_DH_SHLIBDEPS_ARGS_amarok-engine-yauap-trinity = -- -xamarok-trinity +### Libtool and Automake updates +# Autoguess automake /usr/share subdirectory. Insure from failures +DEB_AUTOMAKE_SHARE_DIR = /usr/share/automake-$(shell automake --version | head -n 1 | sed 's/^automake (GNU automake) \([0-9]\+\.[0-9]\+\).*/\1/') +ifneq ($(words $(DEB_AUTOMAKE_SHARE_DIR)),1) +DEB_AUTOMAKE_SHARE_DIR = +endif + +post-patches:: debian/stamp-automake +debian/stamp-automake: + touch debian/stamp-automake-started + if test -n "$(DEB_AUTOMAKE_SHARE_DIR)"; then \ + for f in $(DEB_AUTOMAKE_SHARE_DIR)/*; do \ + if test -f $$f && \ + test -f $(DEB_SRCDIR)/admin/`basename $$f`; then \ + cp -f $$f $(DEB_SRCDIR)/admin; \ + fi; \ + done; \ + fi + $(MAKE) -C $(DEB_SRCDIR) -f admin/Makefile.common + touch $@ + +# Install ${curpkg}.install as lintian overrides +$(patsubst %,binary-install/%,$(DEB_PACKAGES)):: + if test -e debian/$(cdbs_curpkg).lintian; then \ + install -p -D -m644 debian/$(cdbs_curpkg).lintian \ + debian/$(cdbs_curpkg)/opt/trinity/share/lintian/overrides/$(cdbs_curpkg); \ + fi + +clean:: + if test -d $(DEB_SRCDIR) && test -f debian/stamp-automake-started; then \ + cd $(DEB_SRCDIR); \ + find . -name Makefile.in -print | \ + xargs --no-run-if-empty rm -f; \ + rm -f Makefile.am acinclude.m4 aclocal.m4 config.h.in \ + configure configure.files configure.in stamp-h.in \ + subdirs; \ + fi + rm -f debian/stamp-automake* + binary-fixup/amarok-common-trinity:: # Fix permissions of some amarok scripts chmod a+x \ -- cgit v1.2.1