diff options
author | eroen <eroen@occam.eroen.eu> | 2014-09-17 11:42:44 +0200 |
---|---|---|
committer | eroen <eroen@occam.eroen.eu> | 2014-09-17 11:42:44 +0200 |
commit | b9273a33ddcf749cf2e2969e72a7efb119f8bb26 (patch) | |
tree | a2f4cbdb275eb8141a74bbb2081d89519fab3d3e /games-util | |
parent | dwarffortress-40.12 - bump (diff) | |
download | eroen-b9273a33ddcf749cf2e2969e72a7efb119f8bb26.tar.gz eroen-b9273a33ddcf749cf2e2969e72a7efb119f8bb26.tar.bz2 eroen-b9273a33ddcf749cf2e2969e72a7efb119f8bb26.zip |
dfhack-0.40.11.1 - make symlink
Diffstat (limited to 'games-util')
l---------[-rw-r--r--] | games-util/dfhack/dfhack-0.40.11.1.ebuild | 280 |
1 files changed, 1 insertions, 279 deletions
diff --git a/games-util/dfhack/dfhack-0.40.11.1.ebuild b/games-util/dfhack/dfhack-0.40.11.1.ebuild index 0054946..39ca526 100644..120000 --- a/games-util/dfhack/dfhack-0.40.11.1.ebuild +++ b/games-util/dfhack/dfhack-0.40.11.1.ebuild @@ -1,279 +1 @@ -# By eroen, 2012-2014 -# -# Permission to use, copy, modify, and/or distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# $Header: $ - -EAPI=5 -inherit base eutils multilib git-r3 cmake-utils games - -df_PV=${PV%.${PV#*.*.*.}} -df_PV=${df_PV#0.} -df_PV=${df_PV%%_*} - -DESCRIPTION="Memory hacking library for Dwarf Fortress and a set of tools that -use it" -HOMEPAGE="http://github.com/DFHack/dfhack" -EGIT_REPO_URI="git://github.com/DFHack/dfhack.git" -EGIT_BRANCH=${PV%.${PV#*.*.*.}}-r${PV#*.*.*.} # 0.40.08.2 -> 0.40.08-r2 -#EGIT_COMMIT= -SRC_URI="http://cloud.github.com/downloads/jjyg/dfhack/libruby187.tar.gz" - -KEYWORDS="~amd64" # ~x86 - -CMAKE_MIN_VERSION=2.8.9 -CMAKE_REMOVE_MODULES_LIST="FindCurses FindDoxygen CMakeVS10FindMake" - -LICENSE="ZLIB MIT BSD-2" -SLOT=${df_PV} -IUSE="api dfusion doc egg isoworld minimal stonesense" - -HDEPEND=" - dev-perl/XML-LibXML - dev-perl/XML-LibXSLT - doc? ( app-doc/doxygen ) - " -LIBRARY_DEPEND=" - || ( sys-libs/zlib[abi_x86_32] - ( sys-libs/zlib - app-emulation/emul-linux-x86-baselibs ) ) - stonesense? ( media-libs/fontconfig[abi_x86_32] - app-emulation/emul-linux-x86-baselibs[development] - media-libs/freetype[abi_x86_32] - x11-libs/libICE[abi_x86_32] - x11-libs/libSM[abi_x86_32] - x11-libs/libX11[abi_x86_32] - x11-libs/libXcursor[abi_x86_32] - x11-libs/libXext[abi_x86_32] - x11-libs/libXinerama[abi_x86_32] - x11-libs/libXrandr[abi_x86_32] - ) - " -DEPEND="${LIBRARY_DEPEND} - ${HDEPEND}" -RDEPEND="${LIBRARY_DEPEND} - stonesense? ( app-emulation/emul-linux-x86-opengl - app-emulation/emul-linux-x86-xlibs - ) - " -# Circular dependency when building egg. -PDEPEND="~games-simulation/dwarffortress-${df_PV}" - -## missing multilib -#dev-lang/lua - binary bundled -#dev-libs/protobuf - bundled -## stonesense -#allegro - binary bundled -# dev-libs/atk (libatk-1.0.so.0) - gtklibs -# dev-libs/glib (libgthread-2.0.so.0,libglib-2.0.so.0,libgobject-2.0.so.0,libgmodule-2.0.so.0,libgio-2.0.so.0) - baselibs -# media-libs/fontconfig (libfontconfig.so.1) -# media-libs/freetype (libfreetype.so.6) -# media-libs/jpeg:62 (libjpeg.so.62) - baselibs -# virtual/glu (libGLU.so.1) - opengl -# media-libs/libpng:1.2 (libpng12.so.0) - baselibs -# virtual/opengl (libGL.so.1) -# sys-libs/zlib (libz.so.1) - baselibs -# x11-libs/cairo (libcairo.so.2) - gtklibs -# x11-libs/gdk-pixbuf (libgdk_pixbuf) - gtklibs -# x11-libs/gtk+ (libgdk-x11-2.0.so.0,libgtk-x11-2.0.so.0) - gtklibs -# x11-libs/libICE (libICE.so.6) -# x11-libs/libSM (libSM.so.6) -# x11-libs/libX11 (libX11.so.6) -# x11-libs/libXcursor (libXcursor.so.1) -# x11-libs/libXext (libXext.so.6) -# x11-libs/libXinerama (libXinerama.so.1) -# x11-libs/libXrandr (libXrandr.so.2) -# x11-libs/pango (libpangocairo-1.0.so.0,libpango-1.0.so.0,libpangoft2-1.0.so.0) - gtklibs - -pkg_setup() { - multilib_toolchain_setup x86 - - df_executable="dwarffortress-${df_PV}" - dfhack_datadir="${GAMES_DATADIR}/${P}" - dfhack_docdir="/usr/share/doc/${P}" - dfhack_statedir="${GAMES_STATEDIR}/${P}" - - dfhack_libdir=$(games_get_libdir)/dwarffortress-${df_PV} - - QA_FLAGS_IGNORED=("${dfhack_libdir#/}"/libruby.so) - QA_PRESTRIPPED=("${dfhack_libdir#/}"/libruby.so) - QA_SONAME_NO_SYMLINK=("${dfhack_libdir#/}"/libruby.so) -} - -src_unpack() { - git-r3_src_unpack - unpack ${A} - mv "${WORKDIR}"/libruby1.8.so.1.8.7 "${WORKDIR}"/libruby.so || die -} - -src_prepare() { - # rm -r patches-master-$(date -I)/ - # stg export -n -d patches-master-$(date -I) -e patch - # rm /usr/local/portage/games-util/dfhack/files/dfhack-0.40.06.9999/* - # cp patches-master-$(date -I)/* /usr/local/portage/games-util/dfhack/files/dfhack-0.40.06.9999/ - epatch "${FILESDIR}"/${PN}-0.${df_PV}/*.patch - - pushd "${S}"/depends/clsocket - epatch "${FILESDIR}"/clsocket/0001-Compile-static-library-as-PIC.patch - popd - - #if use stonesense; then - # pushd "${S}"/plugins/stonesense - # epatch "${FILESDIR}"/stonesense-${PV}/01-null-isn-t-an-int32.patch - # epatch "${FILESDIR}"/stonesense-${PV}/02-configurable-install-paths.patch - # epatch "${FILESDIR}"/stonesense-${PV}/03-don-t-segfault-if-logfile-is.patch - # epatch "${FILESDIR}"/stonesense-${PV}/04-compile-time-configuration-of.patch - # epatch "${FILESDIR}"/stonesense-${PV}/05-compile-time-configurable-log.patch - # epatch "${FILESDIR}"/stonesense-${PV}/06-fix-b0rked-xml-file.patch - # epatch "${FILESDIR}"/stonesense-${PV}/07-compile-time-configurable-dump.patch - # epatch "${FILESDIR}"/stonesense-${PV}/08-compile-time-configurable.patch - # # Patches that no longer fit upstream, not updated yet. - # #epatch "${FILESDIR}"/stonesense/0003-screenshots-in-home-dir.patch - # popd - #fi - #if use isoworld; then - # pushd "${S}"/plugins/isoworld - # epatch "${FILESDIR}"/isoworld-${PV}/01-missing-include-dir.patch - # popd - # ewarn "The isoworld plugin requires agui, and will probably fail to build" - #fi - - # Fix other scripts -# if use dfusion; then -# sed -f - -i plugins/Dfusion/luafiles/{init.lua,friendship/{init.lua,plugin.lua,install.lua},triggers/{plugin.lua,functions_menu.lua},friendship_civ/init.lua,common.lua,embark/{init.lua,plugin.lua},migrants/{init.lua,plugin.lua},xml_struct.lua,xml_types.lua} <<- EOF || die -# s:("dfusion/:("${datadir}/dfusion/: -# s:('dfusion/:('${datadir}/dfusion/: -# EOF -# sed -i "s:libs/Dwarf_Fortress:Dwarf_Fortress:" plugins/Dfusion/luafiles/common.lua -# fi - - ##Issues: - # - dfusion is strange. It's always been that, though. - # - prebuilt ruby - # - bundled lua - # - isoworld requires agui - # - prebuilt allegro for stonesense. - # - stonesense conf file: /usr/share/games/dfhack-9999/stonesense/init.txt - # Set in ./Config.cpp, installed together with the rest of the directory. - # - output files - # - - Make symlinks to (unversioned) /var - - # Doesn't build: - sed -e '/autolabor2/d' \ - -e '/rprobe/d' \ - -i plugins/devel/CMakeLists.txt || die -} - -src_configure() { - # cmake -Wno-dev -LA .. | grep -v '^--' | sed -e 's/:\S*=/=/' -e 's/.*/"-D&"/' - mycmakeargs=( - #"-DBUILD_DEVEL=OFF" - "$(cmake-utils_use_build api DEVEL)" - #"-DBUILD_DEV_PLUGINS=OFF" - "$(cmake-utils_use_build !minimal DEV_PLUGINS)" - #"-DBUILD_DFUSION=ON" - "$(cmake-utils_use_build dfusion DFUSION)" - #"-DBUILD_DOXYGEN=OFF" - "$(cmake-utils_use_build doc DOXYGEN)" - #"-DBUILD_DWARFEXPORT=ON" - "$(cmake-utils_use_build !minimal DWARFEXPORT)" - #"-DBUILD_EGGY=OFF" - "$(cmake-utils_use_build egg EGGY)" - #"-DBUILD_ISOWORLD=OFF" - "$(cmake-utils_use_build isoworld ISOWORLD)" - "-DBUILD_LIBRARY=ON" - #"-DBUILD_MAPEXPORT=ON" - "$(cmake-utils_use_build !minimal MAPEXPORT)" - "-DBUILD_PLUGINS=ON" - "-DBUILD_RUBY=ON" - "-DBUILD_SKELETON=OFF" - #"-DBUILD_STONESENSE=OFF" - "$(cmake-utils_use_build stonesense STONESENSE)" - #"-DBUILD_SUPPORTED=ON" - "$(cmake-utils_use_build !minimal SUPPORTED)" - #"-DCMAKE_INSTALL_PREFIX=/usr/local" - "-DCMAKE_INSTALL_PREFIX=${GAMES_DATADIR}" - "-DCONSOLE_NO_CATCH=OFF" - #"-DDFHACK_BINARY_DESTINATION=." - "-DDFHACK_BINARY_DESTINATION=${GAMES_BINDIR}" - #"-DDFHACK_DATA_DESTINATION=hack" - "-DDFHACK_DATA_DESTINATION=${dfhack_datadir}" - #"-DDFHACK_DEVDOC_DESTINATION=hack" - "-DDFHACK_DEVDOC_DESTINATION=${dfhack_docdir}/dev" - #"-DDFHACK_EGGY_DESTINATION=libs" - "-DDFHACK_EGGY_DESTINATION=${dfhack_libdir}" - #"-DDFHACK_INCLUDES_DESTINATION=hack/include" - "-DDFHACK_INCLUDES_DESTINATION=${GAMES_PREFIX}/include" - #"-DDFHACK_LIBRARY_DESTINATION=hack" - "-DDFHACK_LIBRARY_DESTINATION=${dfhack_libdir}" - #"-DDFHACK_LUA_DESTINATION=hack/lua" - "-DDFHACK_LUA_DESTINATION=${dfhack_datadir}/lua" - #"-DDFHACK_PLUGIN_DESTINATION=hack/plugins" - "-DDFHACK_PLUGIN_DESTINATION=${dfhack_datadir}/plugins" - #"-DDFHACK_RUBY_DESTINATION=hack/ruby" - "-DDFHACK_RUBY_DESTINATION=${dfhack_datadir}/ruby" - #"-DDFHACK_STATEDIR=." - "-DDFHACK_STATEDIR=${GAMES_STATEDIR}/${P}" - #"-DDFHACK_USERDOC_DESTINATION=hack" - "-DDFHACK_USERDOC_DESTINATION=${dfhack_docdir}" - #"-DDF_EXECUTABLE=./libs/Dwarf_Fortress" - "-DDF_EXECUTABLE=${df_executable}" - "-DDL_RUBY=OFF" - "-DRUBYLIB=${WORKDIR}/libruby.so" - ) - # "-DSSENSE_ALLEGRO_DESTINATION=${dfhack_libdir}" - # "-DSSENSE_RES_DESTINATION=${dfhack_datadir}/stonesense" - # "-DSSENSE_DOC_DESTINATION=${dfhack_docdir}/stonesense" - - cmake-utils_src_configure -} - -src_compile() { - cmake-utils_src_compile -} - -DOCS="" -src_install() { - cmake-utils_src_install - mv "${D%/}/${GAMES_BINDIR}/dfhack" \ - "${D%/}/${GAMES_BINDIR}/dfhack-${df_PV}" || die - mv "${D%/}/${GAMES_BINDIR}/dfhack-run" \ - "${D%/}/${GAMES_BINDIR}/dfhack-run-${df_PV}" || die - ! use egg || mv "${D%/}/${GAMES_BINDIR}/egghack" \ - "${D%/}/${GAMES_BINDIR}/egghack-${df_PV}" || die - rm -f "${D%/}/${dfhack_docdir}"/LICENSE || die - dodir "${dfhack_statedir}" - if use stonesense; then - dodir "${GAMES_SYSCONFDIR#/}/${P}/stonesense" - mv "${D%/}/${dfhack_datadir#/}/stonesense/init.txt" \ - "${D%/}/${GAMES_SYSCONFDIR#/}/${P}/stonesense/init.txt" || die - dosym "${ROOT}${GAMES_SYSCONFDIR#/}/${P}/stonesense/init.txt" \ - "${dfhack_datadir#/}/stonesense/init.txt" - elog - elog "The Stonesense configuration file can be found at" - elog "${GAMES_SYSCONFDIR#/}/${P}/stonesense/init.txt" - fi - prepgamesdirs - fperms g+w "${dfhack_statedir}" - # userpriv: portage user needs to be able to link: - fperms o+rx "${dfhack_libdir}" - use egg && fperms o+rx "${dfhack_libdir}"/libegg.so -} - -pkg_postinst() { - games_pkg_postinst - elog - elog "Due to Dwarf Fortress' special needs regarding working directory," - elog "specifying relative paths to DFHack plugins can give unintended results." - elog - elog "Your dfhack.init should be placed in \${HOME}/.dwarffortress-${df-PV}/ ," - elog "otherwise the example configuration will be used." - elog - if ! use egg; then - elog "To start DFHack, please run dfhack-${df_PV}" - else - elog "To start DFHack, please run dwarffortress-${df_PV}" - fi -} +dfhack-0.40.08.2.ebuild
\ No newline at end of file |