diff options
| author | eroen | 2012-10-24 15:56:30 +0200 |
|---|---|---|
| committer | eroen | 2012-10-24 15:56:30 +0200 |
| commit | 28a9ebbfbfb42a9b802f113697ca06a0d5e9a780 (patch) | |
| tree | 4673c2d98af504d3cd3a5f4872fb09be4ae6b377 /games-util | |
| parent | 0bfcc4f8893fa4a5de068874b00f83360c3792c6 (diff) | |
| download | eroen-overlay-28a9ebbfbfb42a9b802f113697ca06a0d5e9a780.tar.gz eroen-overlay-28a9ebbfbfb42a9b802f113697ca06a0d5e9a780.tar.bz2 eroen-overlay-28a9ebbfbfb42a9b802f113697ca06a0d5e9a780.tar.xz | |
refactored patches for upstream benefit
Diffstat (limited to 'games-util')
14 files changed, 312 insertions, 152 deletions
diff --git a/games-util/dfhack/Manifest b/games-util/dfhack/Manifest index df2e5a28..143649c0 100644 --- a/games-util/dfhack/Manifest +++ b/games-util/dfhack/Manifest @@ -1,12 +1,13 @@ -AUX dfhack-0.34.11-r2/0001-removed-magic-flags-and-paths-from-build-system.patch 7972 SHA256 6632d2fc520af0075ecfaf3d23bfb67025fcc48c8a346ee7d8f727dca809b779 SHA512 85a9122ac9f4fe3274907ed18d00dbb4bc63388316151eb53f80623cd928aaa43a99b7787ae55681559d8672b6f5f641d76b27a066927fa5aee92a28fc056b6f WHIRLPOOL b9410f83c5c5c14c72ef8873195ac876f149e8290dffff4c18640d950425d593dcd7f449f92553dbc49dea6dc014e4d9b9eb97b1c9e38081895a19668a536480 -AUX dfhack-0.34.11-r2/0002-tell-various-components-about-non-magic-paths.patch 5346 SHA256 17ebdbfebfd6291602128b6365a6568afb172b544305e0a461d8251d9f81025f SHA512 d87685b48c3972c4d2a0db4cd8332670d92d60527d186d5f7ea7281702c623b6cefbf826608d359dfb298e4258890d113303cf5f0b30b26438be0c90623f12c4 WHIRLPOOL a9d8c0fbca35f70b9ae837f1ed48aec62058cc92617d93c1fc90514d3ce1e14ababf89a3f421a9667a5dcc301536c56cab9bf2e229abba3a9dc1ae0861cffa6e -AUX dfhack-0.34.11-r2/0003-don-t-build-static-libs.patch 3183 SHA256 9e32774f47d53a52bf294150a0da45405221163d375af52ef43f12af3dd4b587 SHA512 089d5549b85956d607410673fc5aa9014039bcf799bf5aa09aabfc6fd893d9884b51fa64676b156dd7500dae7bb8a2eaaf7aacd9d63e6555d024a7683d1ca0b9 WHIRLPOOL 657249e33e76c46ee402202a688cf315f69279f1cf4cd55480f0ce0488eaa5e6ee19f65ad4c3d84f2b6c71f3381c0c8ae89fc387022dea1a5c667a168e644a8d -AUX dfhack-0.34.11-r2/0004-compile-time-configurable-statedir.patch 3337 SHA256 d7bbe9666bc659894154ed94ecaca86155ea0917173b8efb1c17cc15e4baf454 SHA512 a6788871951c8303cabf7520e653becd0de29e3984dc5dcd397b1371745d83cd3c460a36251ba4f329f7e43d9f0d2825110847edee16bf400ddf9c3f795ba1ef WHIRLPOOL fe1dd424e64308ad878300ff5d895b0351ff1c541b4c582a0ea701637c3f967044bc5fb57f94e8426277cd3cb7f6bc12345113efeaf8cbbc8b571bc9a6cf777b -AUX ssense/0001-compile-time-configuration-of-magic-cwd.patch 7753 SHA256 7f3a9033748e4fc0bc41771d1968470ef40e88274057200c46c66f1550af45ed SHA512 1b9dacf6a3d96f560c9cc793c9fccba5126ad596c76b3d9a4ae9a14a1ebe9c34511bc492594039df1596c2911e70ad16cc06821ba005cff6fcabcc237ecd50a1 WHIRLPOOL 604739d52b540bb6111eef363d98d481ea4047aa819a263644c227ff27bdf4168d6bf06c51d1b4fc4dfbd0624fea17e22b09bc75c752d77c6ee81e30e6f8b000 -AUX ssense/0002-screenshots-in-home-dir.patch 2578 SHA256 75d82bb719292736f8003a6a2d75ec09e899f35780de9e5a04ebb8a23ba735ce SHA512 5635c8e712cdf6196d5981e040e7c9a6e0cbd4eaa7ec8860d3741355d4e1d58724c68a60ef9f2d6cfb2afa0ef2971ca70ea54e3a8d994d00484b5ba4dc022954 WHIRLPOOL 01ccc2ab9c426064f31abdb332053e425ce2cc9f879e5946619c98b52f9122f76b27d38f48b700969a7a9a28d2d5383dcdad68bb69302084c769c98f1b3c7aa1 -AUX ssense/0003-dont-segfault-if-logfile-is-unwritable.patch 1064 SHA256 d9c529b47aa6ba84961d2795db15ab0831aac5942d12d09767a92dd965482502 SHA512 aaa7822dee3738bafa03f51044f42a7b9f6deda02aec0bb7de8a8cadd6423f20e92ef7e73a20ff28235ebc5eeb8a7b9d3cbdf7c7e3d1abf17b9b58719006a951 WHIRLPOOL c79146a216a879aba94f913feeaeb5444ff50df2e1fd7f33f0eb254c9fbca944ab1c5f37feb0f4407aa1559e420372f6573340e822a446d725bd0350257bf593 -AUX ssense/0004-create-various-output-files-in-HOME-not-cwd.patch 5217 SHA256 1aabc5a6c15b9cdc76c93dc94e572c526f2b3d1ef309f2d34a92c64a9d449942 SHA512 ddfd1b9714e6ff5572b19422262c3795a3c1923afae115aaba648b5dd77fd669eef13b0f4e575d8ab15c0ecccaf2d1fcb166fa8e10c501d459bf38a3ef1439b2 WHIRLPOOL 779f015469382c92734d941677d90c7b6bfef21ff391841d249a5deef75f8591c781ff33b125d5713373271f91b20d266579c80d173c9844d4eb0fd4bec595c4 -AUX ssense/0005-don-t-build-static-tinyxml-as-lib.patch 985 SHA256 312d959eb2aae92700e5afac3b08204857e84d740f94d3523d882841a5efc660 SHA512 f47950d7ab4f4a045a92d8e748edfa81f74ce51b97ab03f2866a45b4e25c34e6438f5597049bf04b379467db3b019f9a8013781985a729fe449add55c1ccfe89 WHIRLPOOL 3880de822d96cdca1470eff7786b220407dd2e97e5c2221dbaa5ef42cca24ad18e711fa3bb9cb586bdf39ec9a692bbbc4ab721d792520357b6152dceb88d0221 -EBUILD dfhack-0.34.11.2.ebuild 5128 SHA256 5d5ea56156cc0e3235c9e768b7dc425d2898d0b46524bc5a1d18296f1844ce77 SHA512 e250f42027db5f17505e8a40f033e50c32681c3f9bd710182bf9b50f3cbf8e06e1592a2b1579982090015c6b3bf914c1e8d9ad9f6997f4914f287c5262805f63 WHIRLPOOL 81e515f3717dd6278e3da0166e270f368e3b5378efa2d30704772cf2ec7fae43b7e14aedcc546977325d6133003edd861b694ebe077556c05651724ccb407ec6 +AUX clsocket/0001-Compile-static-library-as-PIC.patch 960 SHA256 cb06cba3d104096302ec094e340bb5d99e82b68bce30bd094d0fef54bf33f4c3 SHA512 d09d18647c8db7c9a98f28ac73f5a1a2e7921b631e8f2f59fe6a704b949698eb860d786fd8e17cb495946e261966d6fdadd501bdf1b05abf55f0a89b228e0104 WHIRLPOOL 7f891ef012c6cb16d596cb32dba78543a7327a706bada24f0de660777815f242d977468b22847df5e92d976a5a91147fcf758fdb687e464b8f18d2a38aa321bd +AUX stonesense/0001-Compile-static-dependency-libraries-as-PIC.patch 2560 SHA256 68b963d4ee79406c960064d8bbf0872fdc44ca91c487941d7ee6afa4790965f4 SHA512 ccd3463d0e764f87957d19db9f0b5f194adc93498ed62d20ac3b75be6a73a9928b2b37a004511b37e5dc5bc91f6bf244ba14636d43b6372069485c38599ec009 WHIRLPOOL dfc24a318470454b79b89793bfcacb7135839284bdcd895a80400c21598ca093a643f00fe78edb524e865a351c27c339d49e40c5b5b961a1216ec5928dab5c20 +AUX stonesense/0001-dont-segfault-if-logfile-is-unwritable.patch 1064 SHA256 6e9fc52b4a7779c50332e98d3d0a5949197dea352639e6c0aa9f2c170d1558d7 SHA512 0a6e5113d7fcb8fe241e6cb2eb58b8428b871675fdcc3f7234c5fc953820eac3c7efa088eca5bfc1062c439577800a8b6c38b7d22e8ba34cfb00806bb285b783 WHIRLPOOL 73ab1749346ab2f889fb16c9ec91b96dcbecc1607ac8e42c586fa407a3186e042fa74c7086dd7f2b1fc0812c524e7c309fb0f16a2a35f7c782eb182bd2fe7ea3 +AUX stonesense/0002-compile-time-configuration-of-magic-cwd.patch 7753 SHA256 79e024cbcf34998866dee56b7e27b1cad3a8d3da152bbc43b329723109d58d51 SHA512 b892aa4a94eefefe63d52352f2f01a76327fdcdf99cce5c565738f82b7b45de8536128dc7529df52bb4a465d5e198e0c774d0690f5577e8533b8f08221b6e377 WHIRLPOOL ce9507bb7f67666f87a8463cab941ad2ba1b14e8ec3000d587855a2922ca5a186dffd062c752bb313ac111d9645c979421b0657082c44c3ac000c3e8c787b25e +AUX stonesense/0002-removed-magic-flags-and-paths-from-build-system.patch 7972 SHA256 3930c1cf8f8e9bb08fa87991160795adca28462a0cf2077be02e732378679195 SHA512 52dd3df6c924ef09b8de81064b91f1779c8fbce06c010beeb634c1e9e482b22658ad2ca605206f62ad479d564ae7ea7d7be68b8229f23a9352cc5758b2653a89 WHIRLPOOL 9277afd6297a3784eb494dd5e9d9841d7e5770c7fc78a2fb6bc0bfd67568759df2f7b8025b0fcc1abb8f430a74d0ba0855f53b1ae1d24831e825c4bdd2150613 +AUX stonesense/0003-screenshots-in-home-dir.patch 2578 SHA256 88bc1a28442dfe8e5ff08e27e82de6443a3c5bccf49d7bcb2a26637a71ae3e18 SHA512 988efaba82e96149641e8dd6d8769b3ac1d890ebaa35128507a8f0d633af947ad9d8090758e1734a2f9b118c5404e4d712e2abb9a4e971f980f4163c0b646f5b WHIRLPOOL f3f03c297fbd39f27b5957cca0073a3420a10ba0a1741cf73f210cf680c2083c761cb68a637663281e69d1fee9e7b5049c3074f18fed394f48888bc377f5bb70 +AUX stonesense/0003-tell-various-components-about-non-magic-paths.patch 5346 SHA256 58fe6f1897a8ee508e7f733753449a0d7553803aceac7948b0630160968e2a54 SHA512 6def4e1bd38eedd74fe445b1e147e959ed20704895ff67c9d2c76fd7030761f36ad3b5ef69d640be78ba2bc174265567df1053dae6fbaba280287064dcd7ff96 WHIRLPOOL e2b1d9249783c802e07324f55261851923f645e4a5890e711d5e18c82d9c953496ac1ed6e9560211e2a8432f0dc9814b48f90b177712353c57c51fd3d4efa5ba +AUX stonesense/0004-compile-time-configurable-statedir.patch 3337 SHA256 68c69af2216efa341618307041c4875c42533a10711b524417dcb2dee00c4d22 SHA512 2adfc4640956ac2ded52da9b1b20e13c9faf5b56f0726e21bffbf6da067336c17a15251bfd39c29c0c08a424d8e4bd94db2e79985399e022fd3a2c5ac0ee63e5 WHIRLPOOL 6e95715aa471271a14dd0d6d05d9f7baebe332add0960b6ff555ee0559d7ddb562a88a89ddf28b0c82dae4249d1aa4e62080f5c10795f380adff3ec3a30c0d49 +AUX stonesense/0004-create-various-output-files-in-HOME-not-cwd.patch 5217 SHA256 3ac09c948cc36b04058a82cb9f04e0ff26ffee765bf2300a46eac09cebc867de SHA512 9f0c2c5f4a2d15c99e06d30e1d3825527449f63de4d370533f07ce4324d0afbd1a2190dcf9589cbd326fd0f9705333bb436bed74e72ac4a7485f002fa3600639 WHIRLPOOL cbe81a086301a3dc218f31e3b1edb837bd81a25d151e5d46c0988d080165e95faac8ab14a97995a7092262542cbb8b29a2a540fe45a5c74b520e47ec5ab0f420 +AUX stonesense/0005-remove-annoying-banner.patch 1394 SHA256 7db8259c2e6d473db0f1af3ad98f0b55272f2fdab3c56e9a1198a6cb0848c58f SHA512 d4b5e801deb04f11080cda61b4da80192172e75548978272976c23d9168d443bd274ccb53c39f701df45f73032ee126d04aa2fb8a86816c2003d8635afdf7857 WHIRLPOOL 9dc6fb52b3f65f5696470d2a8482e693702f72382cf1d71d22f053a536d20b438a1b2a584249738f134bd4f9a08d67c7f19f4db2a909a3c929316a2f45e650b8 +EBUILD dfhack-0.34.11.2.ebuild 5230 SHA256 0982a4adcdca324c69edc775fab40695e236543ea6a40fe2d37cd2200fb3a485 SHA512 b5981b39c94b858e42f292529a6af8edf41d11609f06bbae137da1ffa991e985061a1bcff694fb1d48cfa43462a2fe4718970b7a8fa9080b750a67f4228cb101 WHIRLPOOL e0ab5108d3a1e79f33155c666f1a64b2b76c4d1f110391af3050a2b38996c76d70626eb8dd2d45be1f0d842674371c62663d2a5bc8772397d33a479389cde569 EBUILD dfhack-9999.ebuild 5247 SHA256 3c1d011b03a81b42a27e905d8edd111670863adf424b267d49052c1b256024e5 SHA512 50702fddc31cda43c2ffaf72bd204b1a42959fcb60aba79538470f4d8daec9f41263f004b722178e537b66a919d7f8a900c552a3ceca971db7e1a3cbdd781c14 WHIRLPOOL e00c37113c909e8d2cec041f80b994ab8236de3748ae2ec8112d4c90f7e653373b72a29b5e947c73c96263a8f0cc265bbcd53df273dd046fb8b0316cbbdf303d MISC metadata.xml 572 SHA256 913cbd415cc83010473062c137ac57dba4541349efec58e0a8325be33cb0a77c SHA512 167c1513cca31c08a89503b4b960cc1b45c43c1d9552e8c6cf01d8c837fb99669b898ba58c7e192b5fdef6959db9f123179d9a86e2125dccc1ed76e28ffe3904 WHIRLPOOL 9866820cb844e7c36abf92ac117bbe4cc0b804444441c24a366a61304b21baeded55e122393b393fbb7a47b08abb787cc8aecd6b4c89546c7201153652a3c957 diff --git a/games-util/dfhack/dfhack-0.34.11.2.ebuild b/games-util/dfhack/dfhack-0.34.11.2.ebuild index f98e0361..8fc4287c 100644 --- a/games-util/dfhack/dfhack-0.34.11.2.ebuild +++ b/games-util/dfhack/dfhack-0.34.11.2.ebuild @@ -60,11 +60,13 @@ src_prepare() { if [[ ! "${PV}" == "9999" ]]; then EPATCH_SOURCE="${FILESDIR}/dfhack-${MY_PV}" epatch fi + cd "${S}/depends/clsocket" || die + EPATCH_SOURCE="${FILESDIR}/clsocket" epatch if use ssense; then - cd "${S}/plugins/stonesense" + cd "${S}/plugins/stonesense" || die EPATCH_SOURCE="${FILESDIR}/ssense" epatch fi - cd "${S}" + cd "${S}" || die # Fix up the startup scripts sed -f - -i "package/linux/dfhack" "package/linux/dfhack-run" <<- EOF || die @@ -136,8 +138,10 @@ src_configure() { src_install() { cmake-utils_src_install - mv "${D}/${GAMES_BINDIR}/dfhack" "${D}/${GAMES_BINDIR}/dfhack-${PV}" || die - mv "${D}/${GAMES_BINDIR}/dfhack-run" "${D}/${GAMES_BINDIR}/dfhack-run-${PV}" || die + mv "${D}/${GAMES_BINDIR}/dfhack" \ + "${D}/${GAMES_BINDIR}/dfhack-${PV}" || die + mv "${D}/${GAMES_BINDIR}/dfhack-run" \ + "${D}/${GAMES_BINDIR}/dfhack-run-${PV}" || die dodir "${GAMES_STATEDIR}/${P}" if use ssense; then dodir "${GAMES_SYSCONFDIR}/${P}/stonesense" diff --git a/games-util/dfhack/dfhack-9999.ebuild b/games-util/dfhack/dfhack-9999.ebuild new file mode 100644 index 00000000..eea611a7 --- /dev/null +++ b/games-util/dfhack/dfhack-9999.ebuild @@ -0,0 +1,169 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +inherit games versionator git-2 multilib cmake-utils + +if [[ ${PV} == "9999" ]]; then + MY_PV="0.34.11-r2" +else + MY_PV="$(replace_version_separator 3 '-r')" +fi +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="Memory hacking library for Dwarf Fortress and a set of tools that +use it" +HOMEPAGE="https://github.com/peterix/dfhack" +EGIT_HAS_SUBMODULES="yes" +EGIT_REPO_URI="git://github.com/peterix/dfhack.git" +if [[ ! ${PV} == "9999" ]]; then + EGIT_COMMIT="${MY_PV}" +fi +EGIT_REPO_URI="/home/eroen/dfhack-repo/dfhack" + +CMAKE_REMOVE_MODULES_LIST="FindCurses FindDoxygen CMakeVS10FindMake" + +LICENSE="ZLIB MIT BSD-2" +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc api minimal dfusion ssense egg" + +COMMON_DEPEND="" +DEPEND="${COMMON_DEPEND} + dev-vcs/git + dev-util/cmake + dev-perl/XML-LibXML + dev-perl/XML-LibXSLT + doc? ( + app-doc/doxygen + ) + " +RDEPEND="${COMMON_DEPEND} + games-simulation/dwarffortress + app-emulation/emul-linux-x86-baselibs + ssense? ( + app-emulation/emul-linux-x86-baselibs + app-emulation/emul-linux-x86-opengl + app-emulation/emul-linux-x86-xlibs + ) + " + #games-simulation/dwarffortress[egg=] + +src_prepare() { + multilib_toolchain_setup x86 + + local datadir="${GAMES_DATADIR}/${P}" + local dfhack_libdir="${datadir}/lib32" + + if [[ ! "${PV}" == "9999" ]]; then + #epatch "${FILESDIR}/dfhack-${MY_PV}/*.patch" + epatch "${FILESDIR}/dfhack-${MY_PV}" + fi + cd "${S}/depends/clsocket" + epatch "${FILESDIR}/clsocket/0001-build-library-with-pic.patch" + cd "${S}" + if use ssense; then + cd "${S}/plugins/stonesense" + epatch "${FILESDIR}/ssense/*.patch" + cd "${S}" + fi + + # Fix up the startup scripts + sed -f - -i "package/linux/dfhack" "package/linux/dfhack-run" <<- EOF || die + s%"\./stonesense/deplibs"%"${datadir}/stonesense/deplibs"% + s%"\./hack"%"${dfhack_libdir}"% + s%\./hack/libdfhack.so%"${dfhack_libdir}/libdfhack.so"% + s%\./libs/Dwarf_Fortress%"df-34.11"% + s%hack/dfhack-run%"${dfhack_libdir}/dfhack-run"% + EOF + + sed -i "s:\./hack/ruby/:${GAMES_DATADIR}/${P}/ruby/:" \ + "./plugins/ruby/ruby.rb" || die + 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 + + if use egg; then + sed -f - -i ./library/Hooks-egg.cpp <<- EOF || die + s/SDL_Event\* event/SDL::Event\* event/ + EOF + fi + + ##Issues: + # - /plugins/df2mc/source/df2minecraft.cpp # Also abandoned + # - custom raws (with diffs). Make a message. + # - Due to dwarffortress' special needs wrt. working directory, + # specifying relative file paths to dfhack plugins will give sub-optimal + # results. Message. + # - dfusion is strange. It's always been that, though. + # - prebuilt ruby + # - prebuilt allegro for stonesense. + # - ssense fails when reloaded, does not in old setup. Well, sometimes it + # does. I don't know anymore. I'll ignore it for now. + # - stonesense conf file: /usr/share/games/dfhack-9999/stonesense/init.txt + # Set in ./Config.cpp, installed together with the rest of the directory. + # - egg + # - output files + # - - Make symlinks to (unversioned) /var + # + #Ssense functions that fopen filenames: + #-DumpMaterialNamesToDisk - No users + #-DumpItemNamesToDisk - 1 user, called on start + #-DumpPrefessionNamesToDisk - No users +} + +src_configure() { + MY_DOCDIR="/usr/share/doc/${P}" + mycmakeargs=( + "-DCMAKE_INSTALL_PREFIX=${GAMES_DATADIR}" + "-DDFHACK_BINARY_DESTINATION=${GAMES_BINDIR}" + #"-DDFHACK_LIBRARY_DESTINATION=$(games_get_libdir)" + # We install interesting libs, let's not infect the rest of the system. + "-DDFHACK_LIBRARY_DESTINATION=${GAMES_DATADIR}/${P}/lib32" + "-DDFHACK_EGGY_DESTINATION=$(games_get_libdir)" + "-DDFHACK_DATA_DESTINATION=${GAMES_DATADIR}/${P}" + "-DDFHACK_PLUGIN_DESTINATION=${GAMES_DATADIR}/${P}/plugins" + "-DDFHACK_LUA_DESTINATION=${GAMES_DATADIR}/${P}/lua" + "-DDFHACK_INCLUDES_DESTINATION=/usr/games/include" # Will break slotting + "-DDFHACK_DEVLIB_DESTINATION=${GAMES_DATADIR}/${P}/devlib" + "-DDFHACK_USERDOC_DESTINATION=${MY_DOCDIR}" + "-DDFHACK_DEVDOC_DESTINATION=${MY_DOCDIR}/dev" + "-DBUILD_LIBRARY=ON" + "$(cmake-utils_use egg BUILD_EGGY)" + "-DBUILD_PLUGINS=ON" + "-DBUILD_RUBY=ON" + "-DDL_RUBY=ON" # W/o this, libruby.so will be missing => breakage + "$(cmake-utils_use dfusion BUILD_DFUSION)" + "$(cmake-utils_use ssense BUILD_STONESENSE)" + "$(cmake-utils_use doc BUILD_DOXYGEN)" + # Will break slotting, use flag. + "$(cmake-utils_use api BUILD_DEVEL)" + "-DBUILD_SKELETON=OFF" + "-DCONSOLE_NO_CATCH=OFF" + ) + if use minimal; then + mycmakeargs+=( + "-DBUILD_DEV_PLUGINS=OFF" + "-DBUILD_SUPPORTED=OFF" + "-DBUILD_DWARFEXPORT=OFF" + "-DBUILD_MAPEXPORT=OFF" + ) + else + mycmakeargs+=( + "-DBUILD_DEV_PLUGINS=ON" + "-DBUILD_SUPPORTED=ON" + "-DBUILD_DWARFEXPORT=ON" + "-DBUILD_MAPEXPORT=ON" + ) + fi + + cmake-utils_src_configure +} + +QA_PREBUILT+="${GAMES_DATADIR#/}/${P}/lib32/libruby.so" diff --git a/games-util/dfhack/files/clsocket/0001-Compile-static-library-as-PIC.patch b/games-util/dfhack/files/clsocket/0001-Compile-static-library-as-PIC.patch new file mode 100644 index 00000000..25aea219 --- /dev/null +++ b/games-util/dfhack/files/clsocket/0001-Compile-static-library-as-PIC.patch @@ -0,0 +1,34 @@ +From 726079e7fec6d38615e0bf7f48d0eb0b42bdedf6 Mon Sep 17 00:00:00 2001 +From: eroen <eroen@occam.eroen.eu> +Date: Sun, 21 Oct 2012 11:40:50 +0200 +Subject: [PATCH] Compile static library as PIC + +Otherwise, when linked against shared libraries, position dependent code +is included. + +Cross-platform support for handling this was added in cmake 2.8.9. +--- + CMakeLists.txt | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0795081..49cf388 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 2.8 FATAL_ERROR) ++cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR) + project(clsocket) + + # set up versioning. +@@ -67,6 +67,7 @@ else() + else() + ADD_LIBRARY(clsocket STATIC ${CLSOCKET_SOURCES}) + endif() ++ set_target_properties(clsocket PROPERTIES POSITION_INDEPENDENT_CODE True) + endif() + TARGET_LINK_LIBRARIES(clsocket ${PROJECT_LIBS}) + +-- +1.7.12.4 + diff --git a/games-util/dfhack/files/dfhack-0.34.11-r2/0001-Compile-static-dependency-libraries-as-PIC.patch b/games-util/dfhack/files/dfhack-0.34.11-r2/0001-Compile-static-dependency-libraries-as-PIC.patch new file mode 100644 index 00000000..87661a62 --- /dev/null +++ b/games-util/dfhack/files/dfhack-0.34.11-r2/0001-Compile-static-dependency-libraries-as-PIC.patch @@ -0,0 +1,69 @@ +From 3ecda6dbba4f8f8de89e7e1efd8ee40d00e5bb87 Mon Sep 17 00:00:00 2001 +From: eroen <eroen@occam.eroen.eu> +Date: Wed, 24 Oct 2012 12:20:26 +0200 +Subject: [PATCH 1/4] Compile static dependency libraries as PIC. + +Otherwise, we get position dependent textrels in the shared libraries +that link against them, which is slightly bad for performance (and very +bad for portability). + +Cross-platform support for handling this was added in cmake 2.8.9. +--- + CMakeLists.txt | 2 +- + depends/md5/CMakeLists.txt | 3 ++- + depends/tinyxml/CMakeLists.txt | 3 ++- + depends/tthread/CMakeLists.txt | 3 ++- + 4 files changed, 7 insertions(+), 4 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 14436dc..31f63cd 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -11,7 +11,7 @@ else(CMAKE_CONFIGURATION_TYPES) + endif(CMAKE_CONFIGURATION_TYPES) + + ## some generic CMake magic +-cmake_minimum_required(VERSION 2.8 FATAL_ERROR) ++cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR) + project(dfhack) + + if(MSVC) +diff --git a/depends/md5/CMakeLists.txt b/depends/md5/CMakeLists.txt +index 69e0cf0..df14e3c 100644 +--- a/depends/md5/CMakeLists.txt ++++ b/depends/md5/CMakeLists.txt +@@ -1,3 +1,4 @@ + project(dfhack-md5) + ADD_LIBRARY(dfhack-md5 STATIC EXCLUDE_FROM_ALL md5.cpp md5wrapper.cpp) +-IDE_FOLDER(dfhack-md5 "Depends") +\ No newline at end of file ++set_target_properties(dfhack-md5 PROPERTIES POSITION_INDEPENDENT_CODE True) ++IDE_FOLDER(dfhack-md5 "Depends") +diff --git a/depends/tinyxml/CMakeLists.txt b/depends/tinyxml/CMakeLists.txt +index 7d92492..f97f4bc 100644 +--- a/depends/tinyxml/CMakeLists.txt ++++ b/depends/tinyxml/CMakeLists.txt +@@ -1,3 +1,4 @@ + project(dfhack-tinyxml) + ADD_LIBRARY(dfhack-tinyxml STATIC EXCLUDE_FROM_ALL tinystr.cpp tinyxml.cpp tinyxmlerror.cpp tinyxmlparser.cpp) +-IDE_FOLDER(dfhack-tinyxml "Depends") +\ No newline at end of file ++set_target_properties(dfhack-tinyxml PROPERTIES POSITION_INDEPENDENT_CODE True) ++IDE_FOLDER(dfhack-tinyxml "Depends") +diff --git a/depends/tthread/CMakeLists.txt b/depends/tthread/CMakeLists.txt +index d34c19c..2757a6e 100644 +--- a/depends/tthread/CMakeLists.txt ++++ b/depends/tthread/CMakeLists.txt +@@ -1,6 +1,7 @@ + PROJECT(dfhack-tinythread) + ADD_LIBRARY(dfhack-tinythread STATIC EXCLUDE_FROM_ALL tinythread.cpp) ++set_target_properties(dfhack-tinythread PROPERTIES POSITION_INDEPENDENT_CODE True) + if(UNIX) + target_link_libraries(dfhack-tinythread pthread) + endif() +-IDE_FOLDER(dfhack-tinythread "Depends") +\ No newline at end of file ++IDE_FOLDER(dfhack-tinythread "Depends") +-- +1.7.12.4 + diff --git a/games-util/dfhack/files/dfhack-0.34.11-r2/0001-removed-magic-flags-and-paths-from-build-system.patch b/games-util/dfhack/files/dfhack-0.34.11-r2/0002-removed-magic-flags-and-paths-from-build-system.patch index 0e9c0a4a..f1a1b251 100644 --- a/games-util/dfhack/files/dfhack-0.34.11-r2/0001-removed-magic-flags-and-paths-from-build-system.patch +++ b/games-util/dfhack/files/dfhack-0.34.11-r2/0002-removed-magic-flags-and-paths-from-build-system.patch @@ -1,7 +1,7 @@ -From ed06cbdc0d7180c219864409cfb6f3f6c6fe2523 Mon Sep 17 00:00:00 2001 +From c0466435a4f2c10dba9f56abf0ae12c5c446fbaa Mon Sep 17 00:00:00 2001 From: eroen <eroen@occam.eroen.eu> Date: Fri, 19 Oct 2012 23:00:22 +0200 -Subject: [PATCH 1/4] removed magic flags and paths from build system +Subject: [PATCH 2/4] removed magic flags and paths from build system --- CMakeLists.txt | 52 +++++++++++++++++++++++++++++++----------- @@ -13,7 +13,7 @@ Subject: [PATCH 1/4] removed magic flags and paths from build system 6 files changed, 51 insertions(+), 25 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 14436dc..a8eb1f4 100644 +index 31f63cd..7dbe31c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -72,30 +72,56 @@ add_definitions(-DDFHACK_VERSION="${DFHACK_VERSION}") diff --git a/games-util/dfhack/files/dfhack-0.34.11-r2/0003-don-t-build-static-libs.patch b/games-util/dfhack/files/dfhack-0.34.11-r2/0003-don-t-build-static-libs.patch deleted file mode 100644 index 302ae44f..00000000 --- a/games-util/dfhack/files/dfhack-0.34.11-r2/0003-don-t-build-static-libs.patch +++ /dev/null @@ -1,84 +0,0 @@ -From c9dc55921cce2c9fd6a550401e723c5abe79c575 Mon Sep 17 00:00:00 2001 -From: eroen <eroen@occam.eroen.eu> -Date: Mon, 22 Oct 2012 08:52:07 +0200 -Subject: [PATCH 3/4] don't build static libs - -Linking shared libs against static libs is bad. ---- - library/CMakeLists.txt | 20 +++++++++++++------- - plugins/ruby/CMakeLists.txt | 3 ++- - 2 files changed, 15 insertions(+), 8 deletions(-) - -diff --git a/library/CMakeLists.txt b/library/CMakeLists.txt -index f317ccb..58e0949 100644 ---- a/library/CMakeLists.txt -+++ b/library/CMakeLists.txt -@@ -148,6 +148,10 @@ modules/World.cpp - modules/Graphic.cpp - modules/Windows.cpp - ) -+FILE(GLOB CLSOCKET_SOURCES "${clsocket_SOURCE_DIR}/src/*.cpp") -+FILE(GLOB MD5_SOURCES "${dfhack-md5_SOURCE_DIR}/*.cpp") -+FILE(GLOB TINYXML_SOURCES "${dfhack-tinyxml_SOURCE_DIR}/*.cpp") -+FILE(GLOB TTHREAD_SOURCES "${dfhack-tinythread_SOURCE_DIR}/*.cpp") - - IF(WIN32) - SOURCE_GROUP("Modules\\Headers" FILES ${MODULE_HEADERS}) -@@ -233,19 +237,21 @@ IF(UNIX) - ENDIF() - - IF(UNIX) -- SET(PROJECT_LIBS rt dl dfhack-md5 dfhack-tinyxml dfhack-tinythread) -+ SET(PROJECT_LIBS rt dl) -+ SET(PROJECT_DEPEND_SOURCES ${CLSOCKET_SOURCES} ${MD5_SOURCES} ${TINYXML_SOURCES} ${TTHREAD_SOURCES}) - IF(APPLE) -- SET(PROJECT_LIBS dl dfhack-md5 dfhack-tinyxml dfhack-tinythread) -+ SET(PROJECT_LIBS dl) - ENDIF() - ELSE(WIN32) - #FIXME: do we really need psapi? -- SET(PROJECT_LIBS psapi dfhack-tinyxml dfhack-tinythread) -+ SET(PROJECT_LIBS psapi) -+ SET(PROJECT_DEPEND_SOURCES ${CLSOCKET_SOURCES} ${TINYXML_SOURCES} ${TTHREAD_SOURCES}) - ENDIF() - --ADD_LIBRARY(dfhack SHARED ${PROJECT_SOURCES}) -+ADD_LIBRARY(dfhack SHARED ${PROJECT_SOURCES} ${PROJECT_DEPEND_SOURCES}) - ADD_DEPENDENCIES(dfhack generate_headers) - --ADD_LIBRARY(dfhack-client SHARED RemoteClient.cpp ColorText.cpp MiscUtils.cpp ${PROJECT_PROTO_SRCS}) -+ADD_LIBRARY(dfhack-client SHARED RemoteClient.cpp ColorText.cpp MiscUtils.cpp ${PROJECT_PROTO_SRCS} ${CLSOCKET_SOURCES}) - ADD_DEPENDENCIES(dfhack-client dfhack) - - ADD_EXECUTABLE(dfhack-run dfhack-run.cpp) -@@ -280,10 +286,10 @@ IF(APPLE) - SET_TARGET_PROPERTIES(dfhack PROPERTIES SOVERSION 1.0.0) - ENDIF() - --TARGET_LINK_LIBRARIES(dfhack protobuf-lite clsocket lua ${PROJECT_LIBS}) -+TARGET_LINK_LIBRARIES(dfhack protobuf-lite lua ${PROJECT_LIBS}) - SET_TARGET_PROPERTIES(dfhack PROPERTIES LINK_INTERFACE_LIBRARIES "") - --TARGET_LINK_LIBRARIES(dfhack-client protobuf-lite clsocket) -+TARGET_LINK_LIBRARIES(dfhack-client protobuf-lite) - TARGET_LINK_LIBRARIES(dfhack-run dfhack-client) - - if(APPLE) -diff --git a/plugins/ruby/CMakeLists.txt b/plugins/ruby/CMakeLists.txt -index e6d3eff..e14ce37 100644 ---- a/plugins/ruby/CMakeLists.txt -+++ b/plugins/ruby/CMakeLists.txt -@@ -28,8 +28,9 @@ ADD_CUSTOM_COMMAND( - ADD_CUSTOM_TARGET(ruby-autogen-rb DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ruby-autogen.rb) - - INCLUDE_DIRECTORIES("${dfhack_SOURCE_DIR}/depends/tthread") -+FILE(GLOB TTHREAD_SOURCES "${dfhack-tinythread_SOURCE_DIR}/*.cpp") - --DFHACK_PLUGIN(ruby ruby.cpp LINK_LIBRARIES dfhack-tinythread) -+DFHACK_PLUGIN(ruby ruby.cpp ${TTHREAD_SOURCES}) - ADD_DEPENDENCIES(ruby ruby-autogen-rb) - - INSTALL(FILES ${RUBYLIB} DESTINATION ${DFHACK_LIBRARY_DESTINATION}) --- -1.7.12.4 - diff --git a/games-util/dfhack/files/dfhack-0.34.11-r2/0002-tell-various-components-about-non-magic-paths.patch b/games-util/dfhack/files/dfhack-0.34.11-r2/0003-tell-various-components-about-non-magic-paths.patch index 8014b092..bd284f44 100644 --- a/games-util/dfhack/files/dfhack-0.34.11-r2/0002-tell-various-components-about-non-magic-paths.patch +++ b/games-util/dfhack/files/dfhack-0.34.11-r2/0003-tell-various-components-about-non-magic-paths.patch @@ -1,7 +1,7 @@ -From d7b79f3ec2903ab2d35072c0e802522e9c36be39 Mon Sep 17 00:00:00 2001 +From 7a6cfa6f51de199095d741ab51f08704cab7a2c0 Mon Sep 17 00:00:00 2001 From: eroen <eroen@occam.eroen.eu> Date: Sat, 20 Oct 2012 00:37:44 +0200 -Subject: [PATCH 2/4] tell various components about non-magic paths +Subject: [PATCH 3/4] tell various components about non-magic paths --- CMakeLists.txt | 5 +++++ @@ -13,7 +13,7 @@ Subject: [PATCH 2/4] tell various components about non-magic paths 6 files changed, 13 insertions(+), 11 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index a8eb1f4..3f15fb1 100644 +index 7dbe31c..a2bdc11 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -83,6 +83,7 @@ ELSE() diff --git a/games-util/dfhack/files/dfhack-0.34.11-r2/0004-compile-time-configurable-statedir.patch b/games-util/dfhack/files/dfhack-0.34.11-r2/0004-compile-time-configurable-statedir.patch index 2daf7770..44801584 100644 --- a/games-util/dfhack/files/dfhack-0.34.11-r2/0004-compile-time-configurable-statedir.patch +++ b/games-util/dfhack/files/dfhack-0.34.11-r2/0004-compile-time-configurable-statedir.patch @@ -1,4 +1,4 @@ -From d4f7109bd387d7bc63519776cab9b41d2e910cd8 Mon Sep 17 00:00:00 2001 +From 2b15e3426332bc595e9c55a91240e40716920fc8 Mon Sep 17 00:00:00 2001 From: eroen <eroen@occam.eroen.eu> Date: Mon, 22 Oct 2012 10:23:43 +0200 Subject: [PATCH 4/4] compile-time configurable statedir @@ -12,7 +12,7 @@ Subject: [PATCH 4/4] compile-time configurable statedir 5 files changed, 11 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3f15fb1..5aca195 100644 +index a2bdc11..bafd662 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -128,6 +128,12 @@ if(NOT DEFINED DFHACK_DEVDOC_DESTINATION) diff --git a/games-util/dfhack/files/ssense/0005-don-t-build-static-tinyxml-as-lib.patch b/games-util/dfhack/files/ssense/0005-don-t-build-static-tinyxml-as-lib.patch deleted file mode 100644 index 4e3320f0..00000000 --- a/games-util/dfhack/files/ssense/0005-don-t-build-static-tinyxml-as-lib.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 1a928b40e7f071fb31b182809db15ac037a0f48a Mon Sep 17 00:00:00 2001 -From: eroen <eroen@occam.eroen.eu> -Date: Mon, 22 Oct 2012 09:33:55 +0200 -Subject: [PATCH 5/5] don't build static tinyxml as lib - ---- - CMakeLists.txt | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 86c2c76..54d4570 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -43,6 +43,7 @@ SET(PROJECT_SRCS - VegetationConfiguration.cpp - main.cpp - ) -+FILE(GLOB TINYXML_SOURCES "${dfhack-tinyxml_SOURCE_DIR}/*.cpp") - - IF(UNIX) - IF(APPLE) -@@ -158,7 +159,7 @@ ELSE(UNIX) - ${stonesense_SOURCE_DIR}/allegrow/lib - ) - ENDIF(UNIX) --DFHACK_PLUGIN(stonesense ${PROJECT_SRCS} LINK_LIBRARIES dfhack-tinyxml ${PROJECT_LIBS}) -+DFHACK_PLUGIN(stonesense ${PROJECT_SRCS} ${TINYXML_SOURCES} LINK_LIBRARIES ${PROJECT_LIBS}) - #install resources into DF/stonesense - install(DIRECTORY resources/ - DESTINATION "${DFHACK_DATA_DESTINATION}/stonesense" --- -1.7.12.4 - diff --git a/games-util/dfhack/files/ssense/0003-dont-segfault-if-logfile-is-unwritable.patch b/games-util/dfhack/files/stonesense/0001-dont-segfault-if-logfile-is-unwritable.patch index dc0d275a..e7ac8fde 100644 --- a/games-util/dfhack/files/ssense/0003-dont-segfault-if-logfile-is-unwritable.patch +++ b/games-util/dfhack/files/stonesense/0001-dont-segfault-if-logfile-is-unwritable.patch @@ -1,14 +1,14 @@ -From e0408df333902a214ce6762376a1e57063a9deb0 Mon Sep 17 00:00:00 2001 +From ccbcbeebb96ae10bfed161c3697ea8adb7452836 Mon Sep 17 00:00:00 2001 From: eroen <eroen@occam.eroen.eu> Date: Sun, 21 Oct 2012 04:06:19 +0200 -Subject: [PATCH 3/5] dont segfault if logfile is unwritable +Subject: [PATCH 1/4] dont segfault if logfile is unwritable --- main.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/main.cpp b/main.cpp -index 033b757..77917e0 100644 +index be421cd..4808b89 100644 --- a/main.cpp +++ b/main.cpp @@ -86,11 +86,12 @@ void LogError(const char* msg, ...){ diff --git a/games-util/dfhack/files/ssense/0001-compile-time-configuration-of-magic-cwd.patch b/games-util/dfhack/files/stonesense/0002-compile-time-configuration-of-magic-cwd.patch index 0cb04b93..e3238ae8 100644 --- a/games-util/dfhack/files/ssense/0001-compile-time-configuration-of-magic-cwd.patch +++ b/games-util/dfhack/files/stonesense/0002-compile-time-configuration-of-magic-cwd.patch @@ -1,7 +1,7 @@ -From de815dc687998c32154c1f099e5316badc5d4fd5 Mon Sep 17 00:00:00 2001 +From 976cdee61acc578498c06e5fdbf6fb6e5f1aa57e Mon Sep 17 00:00:00 2001 From: eroen <eroen@occam.eroen.eu> Date: Sat, 20 Oct 2012 22:30:46 +0200 -Subject: [PATCH 1/5] compile time configuration of magic cwd +Subject: [PATCH 2/4] compile time configuration of magic cwd --- Block.cpp | 4 ++-- @@ -157,10 +157,10 @@ index 08e26ee..56fbf13 100644 \ No newline at end of file +}
diff --git a/main.cpp b/main.cpp -index be421cd..033b757 100644 +index 4808b89..77917e0 100644 --- a/main.cpp +++ b/main.cpp -@@ -152,7 +152,7 @@ void correctBlockForSegmetOffset(int32_t& x, int32_t& y, int32_t& z){ +@@ -154,7 +154,7 @@ void correctBlockForSegmetOffset(int32_t& x, int32_t& y, int32_t& z){ bool loadfont(DFHack::color_ostream & output)
{
@@ -169,7 +169,7 @@ index be421cd..033b757 100644 if(!al_join_paths(p, config.font))
{
al_destroy_path(p);
-@@ -205,7 +205,7 @@ void drawcredits() +@@ -207,7 +207,7 @@ void drawcredits() {
if(!SplashImage)
{
@@ -178,7 +178,7 @@ index be421cd..033b757 100644 SplashImage = load_bitmap_withWarning(al_path_cstr(p, ALLEGRO_NATIVE_PATH_SEP));
al_destroy_path(p);
}
-@@ -448,7 +448,7 @@ static void * stonesense_thread(ALLEGRO_THREAD * main_thread, void * parms) +@@ -450,7 +450,7 @@ static void * stonesense_thread(ALLEGRO_THREAD * main_thread, void * parms) al_set_new_bitmap_flags(ALLEGRO_MEMORY_BITMAP|ALLEGRO_ALPHA_TEST|ALLEGRO_MIN_LINEAR|ALLEGRO_MIPMAP);
else al_set_new_bitmap_flags(ALLEGRO_MIN_LINEAR|ALLEGRO_MIPMAP);
diff --git a/games-util/dfhack/files/ssense/0002-screenshots-in-home-dir.patch b/games-util/dfhack/files/stonesense/0003-screenshots-in-home-dir.patch index 0bbb93bd..7fc75f5a 100644 --- a/games-util/dfhack/files/ssense/0002-screenshots-in-home-dir.patch +++ b/games-util/dfhack/files/stonesense/0003-screenshots-in-home-dir.patch @@ -1,7 +1,7 @@ -From edd2fcd994d88ee2f473aa7ff3f0421a47214f27 Mon Sep 17 00:00:00 2001 +From de537311f86f4a15a3cfe4b99786d8c53801c7ba Mon Sep 17 00:00:00 2001 From: eroen <eroen@occam.eroen.eu> Date: Sat, 20 Oct 2012 23:38:28 +0200 -Subject: [PATCH 2/5] screenshots in home dir +Subject: [PATCH 3/4] screenshots in home dir --- GUI.cpp | 25 ++++++++++++++++--------- diff --git a/games-util/dfhack/files/ssense/0004-create-various-output-files-in-HOME-not-cwd.patch b/games-util/dfhack/files/stonesense/0004-create-various-output-files-in-HOME-not-cwd.patch index 6197c1e5..a8e3de97 100644 --- a/games-util/dfhack/files/ssense/0004-create-various-output-files-in-HOME-not-cwd.patch +++ b/games-util/dfhack/files/stonesense/0004-create-various-output-files-in-HOME-not-cwd.patch @@ -1,7 +1,7 @@ -From d56a796c5e61af4434a8a0deca68763e6059fca1 Mon Sep 17 00:00:00 2001 +From 7df1773ce3cfc77a83b24ca134bff4ae147c8ff9 Mon Sep 17 00:00:00 2001 From: eroen <eroen@occam.eroen.eu> Date: Sun, 21 Oct 2012 05:29:56 +0200 -Subject: [PATCH 4/5] create various output files in $HOME, not cwd. +Subject: [PATCH 4/4] create various output files in $HOME, not cwd. This is necessary, since Dwarf Fortress demands to control the cwd. --- |
