--- /usr/portage/dev-util/gambas/gambas-2.7.0.ebuild 2008-06-26 +++ /usr/portage/dev-util/gambas/gambas-2.7.0.ebuild 2008-07-22 @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-util/gambas/gambas-2.7.0.ebuild,v 1.1 2008/06/26 23:32:09 darkside Exp $ -inherit autotools eutils qt3 +inherit autotools eutils qt3 fdo-mime MY_P="${PN}2-${PV}" @@ -14,10 +14,10 @@ SLOT="2" -KEYWORDS="~x86" -IUSE="bzip2 corba curl firebird gtk kde mysql odbc opengl pcre pdf postgres qt3 sdl smtp sqlite sqlite3 svg v4l xml zlib" +KEYWORDS="~amd64 ~x86" +IUSE="bzip2 corba curl debug firebird gtk kde mysql odbc opengl pcre pdf postgres qt3 sdl smtp sqlite sqlite3 svg v4l xml zlib" -DEPEND="" +DEPEND="sys-devel/libtool" RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 ) corba? ( >=net-misc/omniORB-4.1.0 ) curl? ( >=net-misc/curl-7.15.5-r1 ) @@ -50,33 +50,46 @@ if ( !( use gtk ) ); then use svg && die "SVG support depends on GTK being enabled" fi - - ewarn - ewarn "Your CFLAGS and LDFLAGS from make.conf are not handled correctly" - ewarn "They are currently ignored and replaced with internal values" - ewarn - - ### v4l linux kernel support check needed? } src_unpack() { unpack ${A} cd "${S}" + ebegin "Applying sed no-automagic-patch" sed -i -e 's/gb_enable_\$1=yes/gb_enable_\$1=no/' \ acinclude.m4 \ || die "sed no-automagic-patch failed" - - sed -i -e 's/@QT_LDFLAGS@/\${QT_LDFLAGS}/' \ - gb.qt/src/Makefile.am \ - gb.qt/src/ext/Makefile.am \ - gb.qt/src/opengl/Makefile.am \ - || die "sed qt_ldflags-patch failed" + eend 0 epatch "${FILESDIR}/${PN}-2.5.0-gcc-libffi-path.patch" epatch "${FILESDIR}/${PN}-2.5.0-sdl.patch" - epatch "${FILESDIR}/${PN}-2.7.0-help-path.patch" epatch "${FILESDIR}/${PN}-2.5.0-mimetype-registration.patch" + epatch "${FILESDIR}/${PN}-2.7.0-help-path.patch" + + # gb.qt needs this patch because it does not use GB_COMPONENT_PKG_CONFIG + epatch "${FILESDIR}/${PN}-2.7.0-r1-gb.qt-QT_LDFLAGS.patch" + + # help does not appear to need libtool + epatch "${FILESDIR}/${PN}-2.7.0-r1-help-GB_INIT_SHORT.patch" + + # libtool compatibility + epatch "${FILESDIR}/${PN}-2.7.0-r1-remove-libltdl-from-main.patch" + epatch "${FILESDIR}/${PN}-2.7.0-r1-libtool-and-FLAGS.patch" + + ebegin "Applying sed remove-libtool-patch" + # remove embedded libtool.m4 file + sed -i -e '/[-][*][-]Autoconf[-][*][-]$/,/^dnl\ Like\ AC_CHECK_HEADER,\ but/d' \ + acinclude.m4 \ + || die "sed remove-libtool-patch failed" + eend 0 + + ebegin "Remove provided libtool/libltdl" + rm -R ./main/libltdl \ + && rm config.guess config.sub install-sh ltmain.sh \ + && rm */config.guess */config.sub */install-sh */ltmain.sh \ + || die "removing libtool failed" + eend 0 eautoreconf || die "eautoreconf failed" } @@ -112,15 +125,18 @@ --enable-crypt $(use_enable opengl) $(use_enable corba) - --enable-image - --enable-desktop" + $(use_enable qt3 image)" + if (use qt3 || use gtk); then + myconf="${myconf} + --enable-desktop" + fi myconf_main="--enable-intl --enable-conv --enable-ffi --enable-preloading" - if (use qt); then + if (use qt3); then myconf_qt="$(use_enable opengl qtopengl) --enable-qt-translation " fi @@ -128,7 +144,7 @@ myconf_xml="$(use_enable xml xslt)" econf ${myconf} ${myconf_main} ${myconf_qt} ${myconf_xml} \ - --enable-optimization --disable-debug --disable-profiling \ + $(use_enable debug) --disable-profiling \ --docdir=/usr/share/doc/${PF} --htmldir=/usr/share/doc/${PF}/html \ || die "econf failed" @@ -139,11 +155,34 @@ emake DESTDIR="${D}" install -j1 || die "emake install failed" dodoc AUTHORS ChangeLog NEWS README || die "dodoc failed" + + if (use qt3 || use gtk); then + make_desktop_entry "gambas2" "Gambas" "/usr/share/icons/hicolor/128x128/apps/gambas2.png" "Development" \ + || die "make_desktop_entry failed" + + insinto /usr/share/icons/hicolor/128x128/apps + newins comp/src/gb.report/new-logo.png gambas2.png \ + || die "newins failed" + fi + + insinto /usr/share/icons/hicolor/64x64/mimetypes + doins app/mime/application-x-gambasscript.png main/mime/application-x-gambas.png \ + || die "doins failed" + + insinto /usr/share/mime/application + doins app/mime/application-x-gambasscript.xml main/mime/application-x-gambas.xml \ + || die "doins failed" +} + +my_fdo_update() { + fdo-mime_desktop_database_update + fdo-mime_mime_database_update } pkg_postinst() { - ewarn - ewarn "This ebuild currently does not create menu items and does not handle Gambas" - ewarn "mime installation correctly" - ewarn + my_fdo_update +} + +pkg_postrm() { + my_fdo_update }