From: "gerion" <gerion.entrup@flump.de>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/user/gerislay:master commit in: gui-apps/organicmaps/, gui-apps/organicmaps/files/
Date: Sat, 23 Dec 2023 00:34:04 +0000 (UTC) [thread overview]
Message-ID: <1703291356.030a9a9ce6cf205e47d43d603708c9e0b6185240.gerion@gentoo> (raw)
commit: 030a9a9ce6cf205e47d43d603708c9e0b6185240
Author: Gerion Entrup <gerion.entrup <AT> flump <DOT> de>
AuthorDate: Sat Dec 23 00:29:16 2023 +0000
Commit: gerion <gerion.entrup <AT> flump <DOT> de>
CommitDate: Sat Dec 23 00:29:16 2023 +0000
URL: https://gitweb.gentoo.org/repo/user/gerislay.git/commit/?id=030a9a9c
gui-apps/organicmaps: add working version
Oriented on the guru version with additional patches.
Signed-off-by: Gerion Entrup <gerion.entrup <AT> flump.de>
gui-apps/organicmaps/Manifest | 3 +
gui-apps/organicmaps/files/more-3party.patch | 47 ++++++++++++++++
.../organicmaps/files/no-dynamic-download.patch | 15 +++++
gui-apps/organicmaps/organicmaps-9999.ebuild | 65 ++++++++++++++++++++++
4 files changed, 130 insertions(+)
diff --git a/gui-apps/organicmaps/Manifest b/gui-apps/organicmaps/Manifest
new file mode 100644
index 0000000..52b869e
--- /dev/null
+++ b/gui-apps/organicmaps/Manifest
@@ -0,0 +1,3 @@
+AUX more-3party.patch 1385 BLAKE2B 87b5f151b3923f6324192741e243d095898d024c320add5318015b2e7058f9614ec278386250d98f41febd153f8ff9a1a9cd0e868ad94ca7c0bb449e90462378 SHA512 6e2778874fb6b58f76f99cfbb925881c569c0b25c3b9f7f9d5e7017a476eb4e28b251a36d57c9849b4ccd8c5e63023aa9552dabfc29423a385d1051a65dc8150
+AUX no-dynamic-download.patch 772 BLAKE2B 8b29d12cd648625540e379c7aab2d081b12860822ffb37af362355ad7dece4b0e886eaa6a769ebef3a988f2a2c7b3cdf804f9ec61f70615f4802a1bef0b1e72b SHA512 c4dc8a82e78ba314ae9a1972e72ac1a176c3368307044ab6d975b6f10a8b96f0c385b5c596379608ed92927be20307453729136eec8141efecf3c2bc369867e6
+EBUILD organicmaps-9999.ebuild 1788 BLAKE2B a27c907bcffa3b504bbe545c9de3600625b4c4b32a7ef556fb478e4a6cfb18c62360ac59fd36071c0e813aa980d1c1ed434a4d73ea23f6fa3f7ce3265a346fbd SHA512 0f2785bf5865c6ab8195f6343b6987151c9ab67c5b0dae11feda503cb7ec868b1dc64db40a5d0306d4d3042414a44376da735a812a8ed82c12bbe9c99043acc9
diff --git a/gui-apps/organicmaps/files/more-3party.patch b/gui-apps/organicmaps/files/more-3party.patch
new file mode 100644
index 0000000..b1293e8
--- /dev/null
+++ b/gui-apps/organicmaps/files/more-3party.patch
@@ -0,0 +1,47 @@
+From b77c26e242945fe06be94059b87c3c2eebdb78eb Mon Sep 17 00:00:00 2001
+From: Gerion Entrup <gerion.entrup@flump.de>
+Date: Fri, 8 Dec 2023 23:45:56 +0100
+Subject: [PATCH] cmake: use some internal libraries without external
+ alternative
+
+---
+ 3party/CMakeLists.txt | 6 +++---
+ base/CMakeLists.txt | 4 +---
+ 2 files changed, 4 insertions(+), 6 deletions(-)
+
+diff --git a/3party/CMakeLists.txt b/3party/CMakeLists.txt
+index bd44e1b7b8..4f5cb99807 100644
+--- a/3party/CMakeLists.txt
++++ b/3party/CMakeLists.txt
+@@ -34,11 +34,11 @@ else()
+
+ # Add pugixml library.
+ add_subdirectory(pugixml)
+-
+- # Add protobuf library.
+- add_subdirectory(protobuf)
+ endif()
+
++# Add protobuf library.
++add_subdirectory(protobuf)
++
+ add_subdirectory(agg)
+ add_subdirectory(bsdiff-courgette)
+
+diff --git a/base/CMakeLists.txt b/base/CMakeLists.txt
+index 7e762b242a..0d7d6c5d10 100644
+--- a/base/CMakeLists.txt
++++ b/base/CMakeLists.txt
+@@ -111,8 +111,6 @@ set(THREADS_PREFER_PTHREAD_FLAG ON)
+ find_package(Threads REQUIRED)
+ target_link_libraries(${PROJECT_NAME} INTERFACE Threads::Threads)
+
+-if (NOT WITH_SYSTEM_PROVIDED_3PARTY)
+- target_include_directories(${PROJECT_NAME} PRIVATE "${OMIM_ROOT}/3party/fast_double_parser/include")
+-endif()
++target_include_directories(${PROJECT_NAME} PRIVATE "${OMIM_ROOT}/3party/fast_double_parser/include")
+
+ omim_add_test_subdirectory(base_tests)
+--
+2.41.0
+
diff --git a/gui-apps/organicmaps/files/no-dynamic-download.patch b/gui-apps/organicmaps/files/no-dynamic-download.patch
new file mode 100644
index 0000000..eb7d021
--- /dev/null
+++ b/gui-apps/organicmaps/files/no-dynamic-download.patch
@@ -0,0 +1,15 @@
+diff --git a/transit/world_feed/world_feed_integration_tests/CMakeLists.txt b/transit/world_feed/world_feed_integration_tests/CMakeLists.txt
+index 9f945568d4..ec9755ab09 100644
+--- a/transit/world_feed/world_feed_integration_tests/CMakeLists.txt
++++ b/transit/world_feed/world_feed_integration_tests/CMakeLists.txt
+@@ -10,7 +10,9 @@ target_link_libraries(${PROJECT_NAME}
+ )
+
+ # This test requires additional data from the other repository
+-set(TEST_DATA_REPO_URL "https://github.com/organicmaps/world_feed_integration_tests_data.git")
++if(NOT TEST_DATA_REPO_URL)
++ set(TEST_DATA_REPO_URL "https://github.com/organicmaps/world_feed_integration_tests_data.git")
++endif()
+ set(DESTINATION_FOLDER "${OMIM_DATA_DIR}/world_feed_integration_tests_data/")
+
+ add_custom_command(
diff --git a/gui-apps/organicmaps/organicmaps-9999.ebuild b/gui-apps/organicmaps/organicmaps-9999.ebuild
new file mode 100644
index 0000000..3e58685
--- /dev/null
+++ b/gui-apps/organicmaps/organicmaps-9999.ebuild
@@ -0,0 +1,65 @@
+EAPI=8
+
+inherit git-r3 xdg cmake
+EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+# this URL is to make the tests compile since organicmaps usually dynamically clones the repo
+# maybe a better way would be to skip the test
+EGIT_WORLD_FEED_REPO_URI="https://github.com/${PN}/world_feed_integration_tests_data.git"
+# organicmaps gets more and more system libraries, we use as many
+# as currently possible, use submodules for the rest
+EGIT_SUBMODULES=(
+ 3party/harfbuzz/harfbuzz
+ 3party/fast_double_parser
+ 3party/just_gtfs
+ 3party/protobuf/protobuf # wait for https://github.com/organicmaps/organicmaps/pull/6310
+ 3party/fast_obj
+)
+
+DESCRIPTION="Offline maps and navigation using OpenStreetMap data"
+HOMEPAGE="https://organicmaps.app"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND="
+ dev-lang/python
+ dev-qt/qtpositioning:6
+ dev-cpp/gflags
+ dev-util/vulkan-headers
+ dev-libs/boost
+ dev-libs/icu
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/more-3party.patch "${FILESDIR}"/no-dynamic-download.patch )
+
+WORLD_FEED_TESTS_S="${WORKDIR}/world_feed_integration_tests_data-${PV}"
+
+src_unpack () {
+ git-r3_fetch
+ git-r3_checkout
+ git-r3_fetch "${EGIT_WORLD_FEED_REPO_URI}"
+ git-r3_checkout "${EGIT_WORLD_FEED_REPO_URI}" "${WORLD_FEED_TESTS_S}"
+}
+
+src_configure() {
+ # organicmaps wants a ./configure.sh execution.
+ # However, this setups mainly stuff for Android and XCode builds that we don't need.
+ # We need just this line here
+ cp private_default.h private.h || die
+
+ CMAKE_BUILD_TYPE="RelWithDebInfo"
+ local mycmakeargs=(
+ -DWITH_SYSTEM_PROVIDED_3PARTY=yes
+ -DBUILD_SHARED_LIBS=off
+ -DTEST_DATA_REPO_URL="${WORLD_FEED_TESTS_S}"
+ )
+ cmake_src_configure
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+
+ einfo "For dark mode type in search ?dark"
+ einfo "For light mode type in search ?light"
+}
next reply other threads:[~2023-12-23 0:34 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-23 0:34 gerion [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-03-07 22:18 [gentoo-commits] repo/user/gerislay:master commit in: gui-apps/organicmaps/, gui-apps/organicmaps/files/ gerion
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1703291356.030a9a9ce6cf205e47d43d603708c9e0b6185240.gerion@gentoo \
--to=gerion.entrup@flump.de \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox