diff options
Diffstat (limited to 'dev-games/physfs')
-rw-r--r-- | dev-games/physfs/Manifest | 8 | ||||
-rw-r--r-- | dev-games/physfs/files/physfs-2.0.3-zip_seek.diff | 15 | ||||
-rw-r--r-- | dev-games/physfs/metadata.xml | 37 | ||||
-rw-r--r-- | dev-games/physfs/physfs-2.0.3-r2.ebuild | 63 | ||||
-rw-r--r-- | dev-games/physfs/physfs-3.0.1-r1.ebuild | 50 | ||||
-rw-r--r-- | dev-games/physfs/physfs-3.0.1.ebuild | 46 | ||||
-rw-r--r-- | dev-games/physfs/physfs-9999.ebuild | 56 |
7 files changed, 275 insertions, 0 deletions
diff --git a/dev-games/physfs/Manifest b/dev-games/physfs/Manifest new file mode 100644 index 000000000000..a0985e090d54 --- /dev/null +++ b/dev-games/physfs/Manifest @@ -0,0 +1,8 @@ +AUX physfs-2.0.3-zip_seek.diff 535 BLAKE2B cfb10e446d6370c0365071d38c2d9ebedf2387959568ac5a80ea10a449f90763ae290be09631fb71bf46afefa2d245a286eb6ba255a7f0e69a4534ea8fccbecc SHA512 016f5cafecdfc7f4d2d9dcb517f0ebe7b7765912361399e2c7e239c936c287ca15c0124fd9378c23d6d0d3669c45c4d4dc498098eb052901d349459c94a29ef2 +DIST physfs-2.0.3.tar.bz2 560628 BLAKE2B 8e3e8497463886678aaa671269133513f08aab1e49a6397f61cd44a5139030326ae0889e795401a967b0641f680f353dfaa39d7102502c2b8e0680c0a5d158b5 SHA512 47eff0c81b8dc3bb526766b0a8ad2437d2951867880116d6e6e8f2ec1490e263541fb741867fed6517cc3fa8a9c5651b36e3e02a499f19cfdc5c7261c9707e80 +DIST physfs-3.0.1.tar.bz2 194638 BLAKE2B a95e599ad5c8c5aafcd9b6569c8b7762bdd0fcdbf9502f8fda61f5068b25c8cf651ce6127a1f139b20baa93bd9ab001d2527aedc0180c3b60246410ab0d35acb SHA512 ddf3b075ccb506da5e9a1ce96001be402752b9b777c2e816a85d48aff3626ff0886ea43eb07bd300fe3a9f59b9a002f54d822c51d483a4ee94b38378534c1879 +EBUILD physfs-2.0.3-r2.ebuild 1434 BLAKE2B e90dfa9de136d2d0c6df7247b7681cfae7dec40f5c9cce97b089c4edbdd6a82cd220e75726b63c6c1d473f1203812e14ca587cf04131a6cbb61d963159d665b8 SHA512 543e02d9f4c5653c385295beb92c3e002cfb153fa968dfeb386fba205523197f35d0dbb9e57e82960583ae5ded4232001a91a39628ceaf2a195c3215ac6ce6de +EBUILD physfs-3.0.1-r1.ebuild 1357 BLAKE2B ccc70d74bc537f05b2ebe2cd64e0b6376e3791380d5d00a367f30d1f6169c0281addfa0e26b713c6ed74ff2882193f0dc84edd1d17b16582834f52a4dc898895 SHA512 f7a3c0d29d45754ceca70388d1fc93ae218bcce727006951089df7744038f88823cce3767e079ce41d6cb2bf7837731cd9f04e3e4417f0df2b64e254f72f2cfd +EBUILD physfs-3.0.1.ebuild 1149 BLAKE2B 4d1741230adecf1df5380d3a15cc00d1fa1a2d21b5b5b5efa31e2dd11b7fdb44ebaf062bd4c8124bdfeed05f330edabd401e62720a432d4ff895dd7be635edfb SHA512 34a700288cb901ba432c748e47203e8234e0f1ba68af56edf490ea798c2afabf6f905cc8d95f602fe8fa66518e2e82d051b95ec7004a913e394bb525478f6dff +EBUILD physfs-9999.ebuild 1458 BLAKE2B 903117df8a7c78a3e08aadaba7d418666ab387dd14172a48e5a63bf4a277c73fc96f2f49a3f81faad62a4aeed47304b64e72ad55253d238ed480568b785c04a8 SHA512 fd7fa508248f2e917cc11cf165da5c6b6fdde20d3d0340410de44ecc175dcfce8a9035b20a971998eb4733125860ad52aed9f6e34b0401266fff02dc7f15d84b +MISC metadata.xml 2053 BLAKE2B 72bacd7ea9c8484446c109a062ca9f68eaa4e7d481d6b0d1e32eb3c7c1afc093c0550a20cb4280a7d3ce60929b204cde0499e20262fe591ca97c0c697e8e9bce SHA512 178d6468849870d0e557c04f899edf8513c3e695df0ce1b543de90ca57f87629a2a6c2ebdefeaf00ffe7891dcc9e340200136f94de0579e2e7f43897b138f3a2 diff --git a/dev-games/physfs/files/physfs-2.0.3-zip_seek.diff b/dev-games/physfs/files/physfs-2.0.3-zip_seek.diff new file mode 100644 index 000000000000..eaab07e16034 --- /dev/null +++ b/dev-games/physfs/files/physfs-2.0.3-zip_seek.diff @@ -0,0 +1,15 @@ +http://icculus.org/pipermail/physfs/2017-January/001217.html + +diff -r 34ebe997c5c0 archivers/zip.c +--- a/archivers/zip.c Fri Jan 01 12:53:41 2016 -0500 ++++ b/archivers/zip.c Wed Jan 25 20:56:26 2017 +0300 +@@ -327,7 +327,8 @@ + return(0); + + inflateEnd(&finfo->stream); +- memcpy(&finfo->stream, &str, sizeof (z_stream)); ++ inflateCopy(&finfo->stream, &str); ++ inflateEnd(&str); + finfo->uncompressed_position = finfo->compressed_position = 0; + } /* if */ + diff --git a/dev-games/physfs/metadata.xml b/dev-games/physfs/metadata.xml new file mode 100644 index 000000000000..62272a610b69 --- /dev/null +++ b/dev-games/physfs/metadata.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer type="project"> +<email>games@gentoo.org</email> +<name>Gentoo Games Project</name> +</maintainer> +<longdescription> +PhysicsFS is a library to provide abstract access to various archives. It is +intended for use in video games, and the design was somewhat inspired by Quake 3's +file subsystem. The programmer defines a "write directory" on the physical +filesystem. No file writing done through the PhysicsFS API can leave that write +directory, for security. For example, an embedded scripting language cannot write +outside of this path if it uses PhysFS for all of its I/O, which means that +untrusted scripts can run more safely. Symbolic links can be disabled as well, for +added safety. For file reading, the programmer lists directories and archives that +form a "search path". Once the search path is defined, it becomes a single, +transparent hierarchical filesystem. This makes for easy access to ZIP files in the +same way as you access a file directly on the disk, and it makes it easy to ship a +new archive that will override a previous archive on a per-file basis. Finally, +PhysicsFS gives you platform-abstracted means to determine if CD-ROMs are available, +the user's home directory, where in the real filesystem your program is running, +etc. +</longdescription> +<use> +<flag name="7zip">Enable 7zip/lzma archive support</flag> +<flag name="grp">Enable Build Engine GRP archive support</flag> +<flag name="hog">Enable Descent I/II HOG archive support</flag> +<flag name="iso">Enable ISO9660 file support</flag> +<flag name="mvl">Enable Descent I/II MVL archive support</flag> +<flag name="slb">Enable Independence War SLB archive support</flag> +<flag name="vdf">Enable Gothic/Gothic II VDF archive support</flag> +<flag name="wad">Enable Doom WAD archive support</flag> +<flag name="qpak">Enable Quake I/II QPAK archive support</flag> +<flag name="zip">Enable ZIP archive support</flag> +</use> +</pkgmetadata> diff --git a/dev-games/physfs/physfs-2.0.3-r2.ebuild b/dev-games/physfs/physfs-2.0.3-r2.ebuild new file mode 100644 index 000000000000..eec6c0e35460 --- /dev/null +++ b/dev-games/physfs/physfs-2.0.3-r2.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit cmake-multilib + +DESCRIPTION="Abstraction layer for filesystem and archive access" +HOMEPAGE="http://icculus.org/physfs/" +SRC_URI="http://icculus.org/physfs/downloads/${P}.tar.bz2" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="alpha amd64 arm ~arm64 hppa ppc64 x86 ~x86-fbsd" +IUSE="doc grp hog mvl qpak static-libs wad +zip" + +RDEPEND="" +DEPEND="doc? ( app-doc/doxygen )" + +PATCHES=( + "${FILESDIR}/${P}-zip_seek.diff" +) + +src_prepare() { + cmake-utils_src_prepare + + sed -i -e 's:-Werror::' CMakeLists.txt || die + # make sure these libs aren't used + rm -rf lzma zlib* +} + +src_configure() { + local mycmakeargs=( + -DPHYSFS_ARCHIVE_7Z=OFF + -DPHYSFS_BUILD_SHARED=ON + -DPHYSFS_BUILD_TEST=OFF + -DPHYSFS_BUILD_WX_TEST=OFF + -DPHYSFS_INTERNAL_ZLIB=OFF + -DPHYSFS_BUILD_STATIC="$(usex static-libs)" + -DPHYSFS_ARCHIVE_GRP="$(usex grp)" + -DPHYSFS_ARCHIVE_HOG="$(usex hog)" + -DPHYSFS_ARCHIVE_MVL="$(usex mvl)" + -DPHYSFS_ARCHIVE_WAD="$(usex wad)" + -DPHYSFS_ARCHIVE_QPAK="$(usex qpak)" + -DPHYSFS_ARCHIVE_ZIP="$(usex zip)" + ) + + cmake-multilib_src_configure +} + +src_compile() { + cmake-multilib_src_compile + + if multilib_is_native_abi && use doc ; then + doxygen || die "doxygen failed" + fi +} + +src_install() { + local DOCS=( CHANGELOG.txt CREDITS.txt TODO.txt ) + local HTML_DOCS=$(usex doc 'docs/html/*' '') + + cmake-multilib_src_install +} diff --git a/dev-games/physfs/physfs-3.0.1-r1.ebuild b/dev-games/physfs/physfs-3.0.1-r1.ebuild new file mode 100644 index 000000000000..237ccc126998 --- /dev/null +++ b/dev-games/physfs/physfs-3.0.1-r1.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit cmake-multilib + +DESCRIPTION="Abstraction layer for filesystem and archive access" +HOMEPAGE="http://icculus.org/physfs/" +SRC_URI="http://icculus.org/physfs/downloads/${P}.tar.bz2" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86 ~x86-fbsd" +IUSE="7zip doc grp hog iso mvl qpak slb static-libs vdf wad +zip" + +DEPEND="doc? ( app-doc/doxygen )" + +DOCS=( docs/CHANGELOG.txt docs/CREDITS.txt docs/TODO.txt ) + +multilib_src_configure() { + local mycmakeargs=( + -DPHYSFS_BUILD_SHARED=ON + -DPHYSFS_BUILD_TEST=OFF + -DPHYSFS_BUILD_STATIC="$(usex static-libs)" + -DPHYSFS_ARCHIVE_7Z="$(usex 7zip)" + -DPHYSFS_ARCHIVE_GRP="$(usex grp)" + -DPHYSFS_ARCHIVE_HOG="$(usex hog)" + -DPHYSFS_ARCHIVE_ISO9660="$(usex iso)" + -DPHYSFS_ARCHIVE_MVL="$(usex mvl)" + -DPHYSFS_ARCHIVE_SLB="$(usex slb)" + -DPHYSFS_ARCHIVE_VDF="$(usex vdf)" + -DPHYSFS_ARCHIVE_WAD="$(usex wad)" + -DPHYSFS_ARCHIVE_QPAK="$(usex qpak)" + -DPHYSFS_ARCHIVE_ZIP="$(usex zip)" + ) + cmake-utils_src_configure +} + +multilib_src_compile() { + cmake-utils_src_compile + multilib_is_native_abi && use doc && cmake-utils_src_compile docs +} + +multilib_src_install_all() { + einstalldocs + if use doc ; then + docinto html + dodoc -r "${CMAKE_BUILD_DIR}"/docs/html/* + fi +} diff --git a/dev-games/physfs/physfs-3.0.1.ebuild b/dev-games/physfs/physfs-3.0.1.ebuild new file mode 100644 index 000000000000..4b0afd2bd59b --- /dev/null +++ b/dev-games/physfs/physfs-3.0.1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit cmake-multilib + +DESCRIPTION="Abstraction layer for filesystem and archive access" +HOMEPAGE="http://icculus.org/physfs/" +SRC_URI="http://icculus.org/physfs/downloads/${P}.tar.bz2" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86 ~x86-fbsd" +IUSE="grp hog mvl qpak static-libs wad +zip" + +RDEPEND="" +DEPEND="" + +DOCS=( docs/CHANGELOG.txt docs/CREDITS.txt docs/TODO.txt ) + +src_prepare() { + cmake-utils_src_prepare + + sed -i -e 's:-Werror::' CMakeLists.txt || die + # make sure these libs aren't used + rm -rf lzma zlib* +} + +src_configure() { + local mycmakeargs=( + -DPHYSFS_ARCHIVE_7Z=OFF + -DPHYSFS_BUILD_SHARED=ON + -DPHYSFS_BUILD_TEST=OFF + -DPHYSFS_BUILD_WX_TEST=OFF + -DPHYSFS_INTERNAL_ZLIB=OFF + -DPHYSFS_BUILD_STATIC="$(usex static-libs)" + -DPHYSFS_ARCHIVE_GRP="$(usex grp)" + -DPHYSFS_ARCHIVE_HOG="$(usex hog)" + -DPHYSFS_ARCHIVE_MVL="$(usex mvl)" + -DPHYSFS_ARCHIVE_WAD="$(usex wad)" + -DPHYSFS_ARCHIVE_QPAK="$(usex qpak)" + -DPHYSFS_ARCHIVE_ZIP="$(usex zip)" + ) + + cmake-multilib_src_configure +} diff --git a/dev-games/physfs/physfs-9999.ebuild b/dev-games/physfs/physfs-9999.ebuild new file mode 100644 index 000000000000..d001542c16ed --- /dev/null +++ b/dev-games/physfs/physfs-9999.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit cmake-multilib + +DESCRIPTION="Abstraction layer for filesystem and archive access" +HOMEPAGE="http://icculus.org/physfs/" +if [[ ${PV} == *9999* ]]; then + EHG_REPO_URI="https://hg.icculus.org/icculus/physfs" + inherit mercurial +else + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86 ~x86-fbsd" + SRC_URI="http://icculus.org/physfs/downloads/${P}.tar.bz2" +fi + +LICENSE="ZLIB" +SLOT="0" +IUSE="7zip doc grp hog iso mvl qpak slb static-libs vdf wad +zip" + +RDEPEND="" +DEPEND="" + +DOCS=( docs/CHANGELOG.txt docs/CREDITS.txt docs/TODO.txt ) + +multilib_src_configure() { + local mycmakeargs=( + -DPHYSFS_BUILD_SHARED=ON + -DPHYSFS_BUILD_TEST=OFF + -DPHYSFS_BUILD_STATIC="$(usex static-libs)" + -DPHYSFS_ARCHIVE_7Z="$(usex 7zip)" + -DPHYSFS_ARCHIVE_GRP="$(usex grp)" + -DPHYSFS_ARCHIVE_HOG="$(usex hog)" + -DPHYSFS_ARCHIVE_ISO9660="$(usex iso)" + -DPHYSFS_ARCHIVE_MVL="$(usex mvl)" + -DPHYSFS_ARCHIVE_SLB="$(usex slb)" + -DPHYSFS_ARCHIVE_VDF="$(usex vdf)" + -DPHYSFS_ARCHIVE_WAD="$(usex wad)" + -DPHYSFS_ARCHIVE_QPAK="$(usex qpak)" + -DPHYSFS_ARCHIVE_ZIP="$(usex zip)" + ) + cmake-utils_src_configure +} + +multilib_src_compile() { + cmake-utils_src_compile + multilib_is_native_abi && use doc && cmake-utils_src_compile docs +} + +multilib_src_install_all() { + einstalldocs + if use doc ; then + docinto html + dodoc -r "${CMAKE_BUILD_DIR}"/docs/html/* + fi +} |