diff options
author | Erik Kundiman <erik@megapahit.org> | 2025-04-07 10:39:39 +0800 |
---|---|---|
committer | Erik Kundiman <erik@megapahit.org> | 2025-04-07 10:39:39 +0800 |
commit | 9b4ef156e767b509c6e6c1dcda4d366308a43fef (patch) | |
tree | 9accc641516882a1d9b03821badd9c49595d479b |
Repo setup & viewer version 7.1.13.53431 ebuild
unpacker is needed for uncompressing zst files.
Downloading 3rd-party files as part of the upstream CMake configuration
wasn't allowed, the files need to be registered as part of the emerge
process, but the unpacking destination path didn't seem customisable, so
the hack is to just move the unpacked files to where they are needed to
be in upstream building, rather than patching upstream files to work
with Portage's default.
The keyword is not masked because 7.1.13 is expected to be the default
(stable) version soon.. even though the Gentoo port still crashes
sometimes (might just be leftover cache from wrong CMake configuration
build type, explained next).
This ebuild is not a live Git using one, so the upstream configuration
process can't figure out the revision number, so it needs to be set on
the environment.
Setting the CMake build type in mycmakeargs didn't have any effect,
emerge set it to RelWithDebInfo instead (maybe that's why it would often
crash, and the way it's supposed to be done is to set it to the cmake
eclass CMAKE_BUILD_TYPE variable instead.
Patching Collada DOM also seemed to have to be done as part of the
emerge process (the one in the upstream configuration process didn't
seem to have any effect).
No USEs yet for now, and the WebRTC build being used is Crow Misia's for
now, as it's been proven to be the safer bet not to prevent CEF from
working.
-rw-r--r-- | games-rpg/megapahit/Manifest | 21 | ||||
-rw-r--r-- | games-rpg/megapahit/megapahit-7.1.13-r53431.ebuild | 104 | ||||
-rw-r--r-- | metadata/layout.conf | 3 | ||||
-rw-r--r-- | profiles/eapi | 1 | ||||
-rw-r--r-- | profiles/repo_name | 1 |
5 files changed, 130 insertions, 0 deletions
diff --git a/games-rpg/megapahit/Manifest b/games-rpg/megapahit/Manifest new file mode 100644 index 0000000..806478c --- /dev/null +++ b/games-rpg/megapahit/Manifest @@ -0,0 +1,21 @@ +DIST colladadom-v2.3-r8.tar.gz 19426408 BLAKE2B 47093a81e571c4b549bb715d0685ca109be4fd859ca7b817762a2ab165b91867bd622ab43529c39e55d81b16c48cd08283ca31893ff25acbd591e5dcebdd5cec SHA512 b36dce3b7be4b49f3c8e4d6c9dbf3529f7ed1f28e64ee45be0e77805f06376b95079798616529302d771ab2b76bf06d2f894ca11e6f7f3097c3f7a05a78c474f +DIST cubemaptoequirectangular-1.1.0-linux64-cb8785a.tar.zst 3405 BLAKE2B 8db4254b72ba7b85cd7244eb04ac677fe809c38c1b5c601cb79ce26bb7b4a3cec21a9ca52e115f2d178d17045696743b5a660b400b2fc787581a47bb4d3a8c31 SHA512 fd4d8f88df81b61c316a6678d53012d080e86702f6f3f5a11d4ae398efe56906333bdbaeaba26b81bb7cd610412b2e489e6820fe5469e3bd8705bea11cb23a7c +DIST curl-7.54.1-10342910827-linux64-10342910827.tar.zst 1493524 BLAKE2B 1abbc87e0a1960ced29b1706d643eb0e30360e7947783105dc2e1bb7133a49999624e79650cd13c260c49539a31d6c616025d9869ee98f14505bbf4ae1e632e5 SHA512 c9bc1294554f4d86eba94318a9f6596561bbcc74f3e78ee79eec48bf0485558266d6bba676907805dce3e105081ac5f92f7a3c6b9ee3be762ccb5472c267cea6 +DIST dictionaries-1.a01bb6c-common-a01bb6c.tar.zst 1826870 BLAKE2B c06f148e608c79bbd9bacd7f9b8b20e4df99ea23072bb341ef844d33644685f7e72f6ed4bfdd7ef897ab7d1117c47599ace29a5a2333701c8b2821d6c1fec045 SHA512 95c0f27727ea7b9e6af3f2fd25e560d93edd678fc6104ca74c0765ef9ae957cceacf029d159b1eb25571fdde0a721b956a59483e1820d1357e42a5c94a72ae86 +DIST dullahan-1.14.0.202408091637_118.4.1_g3dd6078_chromium-118.0.5993.54-linux64-10322607516.tar.zst 93285172 BLAKE2B b89c2ba8d3ca370bf2a65963b950beaf982c66e3a2f0c90f630ddf33ab4ff7fd6e770b3dc20aca2730299b778df9177b598a1e93b6b68fce01d4d269b490a080 SHA512 b797f525482d98a6dd919e352c1ba24156f74b174887af8acf68d5c73df13713cbe20fd58cea12b594586ed93c9094dbc6ed96b4ed11ac8fa9254881e84c78cb +DIST emoji_shortcodes-15.3.2.10207138275-common-10207138275.tar.zst 164530 BLAKE2B 4a68ce80623acdd737036eee2c295b527ce88668230463149139e34d91ba6371ee35979e19e07fb8c044d1b6bd31ecf9e15afd2d37df4194d186541f98912a24 SHA512 dd0466512023dccea716b2010cbfc048e6863770942b63a56116ce9e4d72d7661b601de5bec704aa20d520aede13a6b807eca5c9d6d8e996e3b9339fd6106238 +DIST glh_linear-1.0.1-dev4-common-984c397.tar.zst 18288 BLAKE2B 073c677d5aed4f2f4643c49b3e75edf8a0281418cde109f7501c19aa1150ed84576eba077a4806bb29789d74ad68fd2928fd8329084d532f936a8df22be70833 SHA512 53a82aef56ccc1a6ef71ba68ce3fcfaf8200152e5c5787817db7715982147ebcbaccad9e3e308b54882e83e05a51bfd55b9689f86f7535aa8b04040d0f2277d9 +DIST jpegencoderbasic-1.0-linux64-790015a.tar.zst 8195 BLAKE2B 5858b5560fc6329b25926948a1528a8dfee904f701ab2cc768426f610808121f16dce917340a8bcf7b92fa186cc849f339e816cb608d0299f76dc4818fa524b4 SHA512 53def673d8ac6f207b8659a7c4bb7c82c95c956b51982d925df09c4592f32c3ba85fbfcfc9bada7b7b5bf019a14391d6cff2dec21f921f383e8345ce95755112 +DIST libwebrtc-linux-x64.tar.xz 47153260 BLAKE2B 38a26484380b68e618a3fc648ec2227046aadbfb1492afc9b6d519e93d49b48e83fc57a9477f6b64f8c0efa0b1f408e7b4d069c28bcb0c3e20d86e70bbc08783 SHA512 593110c99751fbad3990ce822f68e461defe14ad8258cd01a5af5dea6a1b9b9079e053963f9dbbeea77198407f42d58ce6e1eb427f360583fd6372eacda60832 +DIST llca-202407221423.0-common-10042698865.tar.zst 312496 BLAKE2B 0097fa44e57990a295f8fa2d7fb1e656f6b21ff97b4e04aac33cbfdf4a2ee7b85a578f7c19bbfe593d5a5f00060a8f4832cfd54fe14418ab1a46d4130d6b0209 SHA512 8abfb35394a4c32ad0c6d0b042c0bad44be84f60cab5c170fa8a965b45eb5baf21559c4840be41422cf95ad26803f3314fc1a2a0e3391460cc29de32c051d246 +DIST llphysicsextensions_stub-1.0.504712-linux64-504712.tar.bz2 16208 BLAKE2B e6b8a1fce1de2329efb6289e03d0b6df88ba045da03f5a76f33960517adbc5fe94f785899cfb26ad2007a2663d12fee97c52d4a9230617af28c60044134a328f SHA512 08a30cf5b8228fb5e49d4e47cf3883a5bb025b230f625c5bf1514d542cbe431b34dda2dd161bdced9c0f634d7bad85b635f18c4545e89e5ffc3200b287330f2e +DIST megapahit-7.1.13-r53431.tar.bz2 27870489 BLAKE2B eee31788558c7c0e83e788de4fdba7ea2af65946de35078a35541bf6f4a2c6231528366f3cd070e5bcd48031bc508c8319b15fcd174d6f38db5dc1b67f4721b1 SHA512 c9fe08041f640854a5d8865a950d3ad737cb5f1068c9f83c0004b1aa45ec94f68c096edcf72aca34b9146260f30169b620099a865d5e28d41a61d755aa79576d +DIST meshoptimizer-0.21.tar.gz 402174 BLAKE2B 43664b39dfdec0a2966cf7b826b0129c3c2820de2a9e042112288411fd6643a634b7356efadaefd31eaa8402837fbe31e8210f9f707e4835e3b2deb1f7c57e83 SHA512 801cdc911da6ece7afe2ae4f5d002f27e8a0b5072ec4332968183941671024b3cda2a45266c0899cc9fb134d3b931d70b3bd9629dc7765f77e102146b2f6bfd0 +DIST mikktspace-1-linux64-8756084692.tar.zst 14679 BLAKE2B d3ff6510bc6aaaf870d3e33a81e0e540707a3e845a7c3638aed714be9e72e572d97d162299e82b06f01cdb4359341d8a172c4ccdf220a2031d87941426eb114c SHA512 eac64b36c262188f4f52f42520e16721a34608fa7216103053cb3b3322dafb96430a5918db19cfa953625997119a30868bf7cf82ea7eb527e12f35c3d1adb899 +DIST openjpeg-2.5.0.ea12248-linux64-ea12248.tar.zst 802823 BLAKE2B 308686da4e8692dfe17ae8c2595e0eedf53a01900f89a8f0337061f2cf51934e99e4f6595e23253843a75ff3a0604ed955f4880de8b7facc75cb55044e5d12bb SHA512 68f60ada768f998952828d858f3cfcbaff0614666735c473df489526a134477d57442ce91c51724ae521ec55fbbe52e1c503d3933ee7a9d304e963a2ac7fd518 +DIST openssl-1.1.1w-linux64-10329796904.tar.zst 5670925 BLAKE2B 63ce3e5890fcf5a429df2b7995aa09bfaf4c7b8bd69183b3e168bacd936b4000ec1d0b4ed28463dcd5538637935c6857a67e8def53c3455855e17ca0bfec4fe7 SHA512 3e7c219eda0d024862eaa3e43e9f92b85a398832596ecf601b280dffc4386451429db30ba822d169c9daf85c302c054a825a6ed57d27da51669a002f9a460feb +DIST openxr-1.1.40-r1-linux64-10710818432.tar.zst 3791090 BLAKE2B 28209b10b988c6de3fd51d26355593b81deacad7ca74ac7a74015233aaab596850b47f2c5a2a60f32e168abe7980f462a252f1ffedd227127a063a7187cc7e93 SHA512 f09422fa815a5308936bef65e468c922c0f26c7edd71d6783dbc78370c0e752cd32f39c49f8d192c6bd937fb6a1f18565eedd3bb461d1f9c5751e56e8cbfcda0 +DIST threejs-0.132.2-common-8454371083.tar.zst 136009 BLAKE2B e62213180b5c387ba8dbb72afe1cc474e1633eb9ec461dd5d7b81d6a26b757a46bd0c89fc18216cf4e157af18d50f1f62f3241b36e0ba5178e20704471c66ebc SHA512 052b15deb462791979da1c0dd5e211d84a3cc7f3a4337d81ee25fd116d33bce7b18975aacd4d9d40e1bcfb2a6cbba3a72e05373b727c8a6471082a0abfbbf104 +DIST tinyexr-1.0.9-5e8947c-common-10475846787.tar.zst 46306 BLAKE2B af1635a386db871ffa1ec46dd10f47997fe9ee265488587ba32da3e490f4611e2535b7d68d37e614d9226a0bffa69f5cc249dcf4ffb0f6f2f23a6784fd98a034 SHA512 40f0314b1ba28e36dc0fcf29b8b54f53f0cce4716dc4ce26d2d29877206752fb9514b479558f061f2d0bf2a93b8c15fcffb041dca36b39e9e43a887cec222f04 +DIST tinygltf-2.9.3-r1-common-10341018043.tar.zst 243496 BLAKE2B 2786f1f4f00b1a6b1c49c276577018987fbdbfd059f89b773c72d46f4432feec7b3c1aadbcd2820684618de825bd517ad8c768118055b36aee730801ca4bc6aa SHA512 ff8ee2e3cdebca5ac148b5ad778ef62b39771dd33df521ca772a966b1db0acf20531d941ceaf00183bfb3fd967d58322577d804440c557d4ca99e964dce03455 +DIST viewer_fonts-1.0.0.10204976553-common-10204976553.tar.zst 4678488 BLAKE2B b378212af0bc504062496cdba7fa2f0a96c8187e3d7615494cc67089f99f2fdc4b38b796fe42116ac6bf1395599a3ef3485057ac853d9a3ab53ac5f8793cf62d SHA512 27b669aad02ee5d034e21ac5e8f74562c117ef6c7df7e1beb6eab75e2cb55f0704abfd12e2a1655b96c484b40c2ac2423a9f2fac10dc7412f276c81b46c813e3 diff --git a/games-rpg/megapahit/megapahit-7.1.13-r53431.ebuild b/games-rpg/megapahit/megapahit-7.1.13-r53431.ebuild new file mode 100644 index 0000000..d0a5852 --- /dev/null +++ b/games-rpg/megapahit/megapahit-7.1.13-r53431.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake unpacker + +DESCRIPTION="A fork of the Second Life viewer" +HOMEPAGE="https://megapahit.net" +SRC_URI=" + https://megapahit.net/downloads/${PF}.tar.bz2 + https://github.com/secondlife/3p-colladadom/archive/refs/tags/v2.3-r8.tar.gz -> colladadom-v2.3-r8.tar.gz + https://github.com/secondlife/3p-cubemap_to_eqr_js/releases/download/v1.1.0-cb8785a/cubemaptoequirectangular-1.1.0-linux64-cb8785a.tar.zst + https://github.com/secondlife/3p-curl/releases/download/v7.54.1-r1/curl-7.54.1-10342910827-linux64-10342910827.tar.zst + https://github.com/secondlife/3p-dictionaries/releases/download/v1-a01bb6c/dictionaries-1.a01bb6c-common-a01bb6c.tar.zst + https://github.com/secondlife/dullahan/releases/download/v1.14.0-r3/dullahan-1.14.0.202408091637_118.4.1_g3dd6078_chromium-118.0.5993.54-linux64-10322607516.tar.zst + https://github.com/secondlife/3p-emoji-shortcodes/releases/download/v15.3.2-r1/emoji_shortcodes-15.3.2.10207138275-common-10207138275.tar.zst + https://github.com/secondlife/3p-glh_linear/releases/download/v1.0.1-dev4-984c397/glh_linear-1.0.1-dev4-common-984c397.tar.zst + https://github.com/secondlife/3p-jpeg_encoder_js/releases/download/v1.0-790015a/jpegencoderbasic-1.0-linux64-790015a.tar.zst + https://github.com/crow-misia/libwebrtc-bin/releases/download/114.5735.6.1/libwebrtc-linux-x64.tar.xz + https://github.com/secondlife/llca/releases/download/v202407221723.0-a0fd5b9/llca-202407221423.0-common-10042698865.tar.zst + http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/4724/14846/llphysicsextensions_stub-1.0.504712-linux64-504712.tar.bz2 + https://github.com/zeux/meshoptimizer/archive/refs/tags/v0.21.tar.gz -> meshoptimizer-0.21.tar.gz + https://github.com/secondlife/3p-mikktspace/releases/download/v2-e967e1b/mikktspace-1-linux64-8756084692.tar.zst + https://github.com/secondlife/3p-openjpeg/releases/download/v2.5.0.ea12248/openjpeg-2.5.0.ea12248-linux64-ea12248.tar.zst + https://github.com/secondlife/3p-openssl/releases/download/v1.1.1w-r1/openssl-1.1.1w-linux64-10329796904.tar.zst + https://github.com/secondlife/3p-openxr/releases/download/v1.1.40-r1/openxr-1.1.40-r1-linux64-10710818432.tar.zst + https://github.com/secondlife/3p-three_js/releases/download/v0.132.2-5da28d9/threejs-0.132.2-common-8454371083.tar.zst + https://github.com/secondlife/3p-tinyexr/releases/download/v1.0.9-5e8947c/tinyexr-1.0.9-5e8947c-common-10475846787.tar.zst + https://github.com/secondlife/3p-tinygltf/releases/download/v2.9.3-r1/tinygltf-2.9.3-r1-common-10341018043.tar.zst + https://github.com/secondlife/3p-viewer-fonts/releases/download/v1.1.0-r1/viewer_fonts-1.0.0.10204976553-common-10204976553.tar.zst +" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="amd64" + +RDEPEND=" + media-libs/freealut + dev-libs/apr-util + dev-libs/boost[context] + x11-libs/fltk + app-text/hunspell + net-libs/nghttp2 + media-libs/libsdl2[opengl] + media-video/vlc + sys-libs/zlib[minizip] +" +DEPEND=" + ${RDEPEND} + media-libs/glm + media-libs/nanosvg + media-video/pipewire + media-libs/libpulse + dev-libs/uriparser + dev-libs/xxhash +" +BDEPEND=" + dev-build/cmake + dev-util/pkgconf + app-arch/zstd +" +S="${WORKDIR}/viewer" + +CMAKE_BUILD_TYPE="Release" + +pkg_setup() { + export LL_BUILD="-O3 -std=c++20 -fPIC -DLL_LINUX=1" + export revision="$(ver_cut 2- ${PR})" +} + +src_unpack() { + unpacker + cd ${WORKDIR} + mkdir -p viewer/indra_build/packages + mv 3p-colladadom-2.3-r8 meshoptimizer-0.21 viewer/indra_build/ + mv LICENSES NOTICE VERSION autobuild-package.xml bin ca-bundle.crt dictionaries docs fonts include js llphysicsextensions lib meta mikktspace.txt resources xui viewer/indra_build/packages/ +} + +src_prepare() { + cd ${WORKDIR}/viewer/indra_build/3p-colladadom-2.3-r8 + eapply ${S}/patches/collada-dom-v2.3-r8.patch + cd ${S}/indra + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DADDRESS_SIZE:STRING=64 + -DUSESYSTEMLIBS:BOOL=ON + -DUSE_OPENAL:BOOL=ON + -DUSE_FMODSTUDIO:BOOL=OFF + -DENABLE_MEDIA_PLUGINS:BOOL=ON + -DLL_TESTS:BOOL=OFF + -DNDOF:BOOL=OFF + -DROOT_PROJECT_NAME:STRING=Megapahit + -DVIEWER_CHANNEL:STRING=Megapahit + -DVIEWER_BINARY_NAME:STRING=${PN} + -DBUILD_SHARED_LIBS:BOOL=OFF + -DINSTALL:BOOL=ON + -DPACKAGE:BOOL=OFF + ) + cmake_src_configure +} diff --git a/metadata/layout.conf b/metadata/layout.conf new file mode 100644 index 0000000..20fcfea --- /dev/null +++ b/metadata/layout.conf @@ -0,0 +1,3 @@ +masters = gentoo +thin-manifests = true +sign-manifests = false diff --git a/profiles/eapi b/profiles/eapi new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/profiles/eapi @@ -0,0 +1 @@ +8 diff --git a/profiles/repo_name b/profiles/repo_name new file mode 100644 index 0000000..6ae0503 --- /dev/null +++ b/profiles/repo_name @@ -0,0 +1 @@ +megapahit |