summaryrefslogtreecommitdiff
path: root/x11-libs/fltk/fltk-1.3.3-r3.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'x11-libs/fltk/fltk-1.3.3-r3.ebuild')
-rw-r--r--x11-libs/fltk/fltk-1.3.3-r3.ebuild163
1 files changed, 163 insertions, 0 deletions
diff --git a/x11-libs/fltk/fltk-1.3.3-r3.ebuild b/x11-libs/fltk/fltk-1.3.3-r3.ebuild
new file mode 100644
index 000000000000..8f4919272d66
--- /dev/null
+++ b/x11-libs/fltk/fltk-1.3.3-r3.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit autotools eutils fdo-mime flag-o-matic
+
+DESCRIPTION="C++ user interface toolkit for X and OpenGL"
+HOMEPAGE="http://www.fltk.org/"
+SRC_URI="http://fltk.org/pub/${PN}/${PV}/${P}-source.tar.gz"
+
+SLOT="1"
+LICENSE="FLTK LGPL-2"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos"
+IUSE="cairo debug doc examples games +opengl static-libs +threads +xft +xinerama"
+
+RDEPEND="
+ >=media-libs/libpng-1.2:0
+ sys-libs/zlib
+ virtual/jpeg:0
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libXext
+ x11-libs/libXt
+ cairo? ( x11-libs/cairo[X] )
+ opengl? ( virtual/glu virtual/opengl )
+ xft? ( x11-libs/libXft )
+ xinerama? ( x11-libs/libXinerama )
+"
+DEPEND="
+ ${RDEPEND}
+ x11-proto/xextproto
+ doc? ( app-doc/doxygen )
+ xinerama? ( x11-proto/xineramaproto )
+"
+
+src_prepare() {
+ rm -rf zlib jpeg png || die
+ epatch \
+ "${FILESDIR}"/${PN}-1.3.2-desktop.patch \
+ "${FILESDIR}"/${PN}-1.3.0-share.patch \
+ "${FILESDIR}"/${PN}-1.3.2-conf-tests.patch \
+ "${FILESDIR}"/${PN}-1.3.2-jpeg-9a.patch \
+ "${FILESDIR}"/${PN}-1.3.3-visibility.patch \
+ "${FILESDIR}"/${PN}-1.3.3-fl_open_display.patch \
+ "${FILESDIR}"/${PN}-1.3.3-fltk-config.patch \
+ "${FILESDIR}"/${PN}-1.3.3-xutf8-visibility.patch
+
+ sed -i \
+ -e 's:@HLINKS@::g' FL/Makefile.in || die
+ # some fixes introduced because slotting
+ sed -i \
+ -e '/RANLIB/s:$(libdir)/\(.*LIBNAME)\):$(libdir)/`basename \1`:g' \
+ src/Makefile || die
+ # docs in proper docdir
+ sed -i \
+ -e "/^docdir/s:fltk:${PF}/html:" \
+ -e "/SILENT:/d" \
+ makeinclude.in || die
+ sed -e "s/7/${PV}/" \
+ < "${FILESDIR}"/FLTKConfig.cmake \
+ > CMake/FLTKConfig.cmake || die
+ sed -e 's:-Os::g' -i configure.in || die
+
+ use prefix && append-ldflags -Wl,-rpath -Wl,"${FLTK_LIBDIR}"
+
+ # also in Makefile:config.guess config.sub:
+ cp misc/config.{guess,sub} . || die
+
+ eautoconf
+}
+
+src_configure() {
+ FLTK_INCDIR=${EPREFIX}/usr/include/fltk
+ FLTK_LIBDIR=${EPREFIX}/usr/$(get_libdir)/fltk
+
+ econf \
+ $(use_enable cairo) \
+ $(use_enable debug) \
+ $(use_enable opengl gl) \
+ $(use_enable threads) \
+ $(use_enable xft) \
+ $(use_enable xinerama) \
+ --disable-localjpeg \
+ --disable-localpng \
+ --disable-localzlib \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
+ --enable-largefile \
+ --enable-shared \
+ --enable-xdbe \
+ --includedir=${FLTK_INCDIR} \
+ --libdir=${FLTK_LIBDIR}
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ emake -C documentation html
+ fi
+
+ if use games; then
+ emake -C test blocks checkers sudoku
+ fi
+}
+
+src_test() {
+ emake -C test
+}
+
+src_install() {
+ default
+
+ emake -C fluid \
+ DESTDIR="${D}" install-linux
+ if use doc; then
+ emake -C documentation \
+ DESTDIR="${D}" install
+ fi
+
+ local apps="fluid"
+ if use games; then
+ emake -C test \
+ DESTDIR="${D}" install-linux
+ emake -C documentation \
+ DESTDIR="${D}" install-linux
+ apps+=" sudoku blocks checkers"
+ fi
+
+ for app in ${apps}; do
+ dosym /usr/share/icons/hicolor/32x32/apps/${app}.png \
+ /usr/share/pixmaps/${app}.png
+ done
+
+ dodoc CHANGES README CREDITS ANNOUNCEMENT
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins test/*.{h,cxx,fl} test/demo.menu
+ fi
+
+ insinto /usr/share/cmake/Modules
+ doins CMake/FLTK*.cmake
+
+ echo "LDPATH=${FLTK_LIBDIR}" > 99fltk
+ echo "FLTK_DOCDIR=${EPREFIX}/usr/share/doc/${PF}/html" >> 99fltk
+ doenvd 99fltk
+
+ # FIXME: This is bad, but building only shared libraries is hardly supported
+ # FIXME: The executables in test/ are linking statically against libfltk
+ if ! use static-libs; then
+ rm "${ED}"/usr/lib*/fltk/*.a || die
+ fi
+
+ prune_libtool_files
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}