On 2024/11/09 13:48, Kristaps Dzonsons wrote: > Hi, this updates the subsurface divelog tool from the old version in ports > to the current "nightly build" system they use, where each commit creates a > new version. > > I can't deduce a way to programmatically map the built version (e.g., > 6.0.5283) into a GH tag, so I just used the commit hashes from when the > version was built. > > The port expands on the existing one with the map capability, which I've > tested and works fine. Haven't actually interfaced with my dive computer, > as it's bluetooth, but I've been using this to plan deco and edit dives > imported elsewhere. It's now able to interface with the subsurface "cloud" > without any "fingerprint" errors the old version was returning. > > The tests don't work, so NO_TEST remains. I included notes on how to enable > them, but they fail when run, so I left them out. > > I'm not subscribed to this list, so please CC me if you'd like to make any > changes. > > Best, > > Kristaps
Here's a version of what you sent that's cleaned up a bit, at least uses DIST_TUPLE, copies the autoconf cache file into the right dir, and passes across some env variables which should be used for the various build parts. I also reordered it a bit to match the existing Makefile so the diff is easier to read. I also added some missed WANTLIB/LIB_DEPENDS for things which get picked up and RUN_DEPENDS needed to provide things for the @tags used in PLIST. There are a couple of Extra WANTLIB/LIB_DEPENDS ("Extra: Grantlee_Templates.1 curl.26") that should either be dropped or if they're needed for dlopen then add a comment about it. Index: Makefile =================================================================== RCS file: /cvs/ports/misc/subsurface/Makefile,v diff -u -p -r1.16 Makefile --- Makefile 8 Feb 2024 06:59:08 -0000 1.16 +++ Makefile 13 Nov 2024 13:25:36 -0000 @@ -1,28 +1,25 @@ COMMENT = divelog program for recreational, tech, and free-divers -VER = 4.8.5 -REVISION = 5 -PKGNAME = subsurface-${VER} -DISTNAME = Subsurface-${VER} +PKGNAME = subsurface-6.0.5283 +DIST_TUPLE += github subsurface subsurface 0e7d3a6466be86f281b49564137f3a7001f7a093 . +DIST_TUPLE += github subsurface libdc a2a5bb53d670dc520bf8035b18681dfdd9b18bfa libdivecomputer +DIST_TUPLE += github subsurface googlemaps 7ce7124b385b2ebac0f72c38b094f436d4fe5c58 gmaps CATEGORIES = misc HOMEPAGE = https://subsurface-divelog.org -# GPLv2, and LGPLv2.1 for libdivecomputer +# GPLv2, LGPLv2.1 for libdivecomputer, MIT for googlemaps # The content of mobile-widgets/qml/icons/ is Apache 2, but not installed. PERMIT_PACKAGE = Yes -WANTLIB += ${COMPILER_LIBCXX} Grantlee_Templates Qt5Concurrent +WANTLIB += ${COMPILER_LIBCXX} Grantlee_Templates GL Qt5Concurrent WANTLIB += Qt5Core Qt5Gui Qt5Location Qt5Network Qt5Positioning -WANTLIB += Qt5PositioningQuick Qt5PrintSupport Qt5Qml Qt5QmlModels -WANTLIB += Qt5Quick Qt5QuickWidgets Qt5Svg Qt5WebChannel Qt5WebEngineCore -WANTLIB += Qt5WebEngineWidgets Qt5Widgets c crypto curl git2 m -WANTLIB += sqlite3 ssh2 ssl usb-1.0 xml2 xslt zip - -SITES = https://subsurface-divelog.org/downloads/ -EXTRACT_SUFX = .tgz -DISTFILES = Subsurface-${VER}${EXTRACT_SUFX} \ - libdivecomputer-subsurface-branch-${VER}${EXTRACT_SUFX} +WANTLIB += Qt5PrintSupport Qt5Qml Qt5Quick Qt5QuickWidgets Qt5Svg +WANTLIB += Qt5WebKit Qt5WebKitWidgets Qt5Widgets c crypto curl +WANTLIB += git2 lcms2 m raw sqlite3 ssh2 ssl usb-1.0 xml2 xslt zip +WANTLIB += Qt5PositioningQuick Qt5QmlModels Qt5Location + +USE_GMAKE = Yes # cmake for subsurface, autoconf for libdivecomputer-subsurface MODULES += gnu \ @@ -31,6 +28,7 @@ MODULES += gnu \ AUTOCONF_VERSION = 2.69 AUTOMAKE_VERSION = 1.16 +AUTOCONF_DIRS = ${WRKSRC}/libdivecomputer BUILD_DEPENDS = ${MODGNU_AUTOCONF_DEPENDS} \ ${MODGNU_AUTOMAKE_DEPENDS} \ @@ -40,37 +38,41 @@ LIB_DEPENDS = archivers/libzip \ databases/sqlite3 \ devel/libgit2/libgit2 \ devel/libusb1 \ + graphics/lcms2 \ + graphics/libraw \ net/curl \ security/libssh2 \ textproc/libxml \ x11/grantlee-qt5 \ x11/qt5/qtbase \ x11/qt5/qtsvg \ - x11/qt5/qtwebengine - -USE_GMAKE = Yes + x11/qt5/qtwebkit \ + x11/qt5/qtlocation -CONFIGURE_ARGS += -DNO_DOCS:Bool=ON \ - -DUSE_WEBENGINE=ON \ - -DBTSUPPORT:Bool=OFF +RUN_DEPENDS = devel/desktop-file-utils \ + x11/gtk+4,-guic -# many "undefined reference to `dc_*" when tests are enabled +CONFIGURE_ARGS += -DBTSUPPORT:Bool=OFF +CONFIGURE_ARGS += -DLIBGIT2_FROM_PKGCONFIG:Bool=ON +CONFIGURE_ARGS += -DNO_DOCS:Bool=ON +CONFIGURE_ARGS += -DWRKINST=${WRKINST} CONFIGURE_ARGS += -DMAKE_TESTS:Bool=OFF -NO_TEST = Yes -post-extract: - rmdir ${WRKSRC}/libdivecomputer - mv ${WRKDIR}/libdivecomputer-subsurface-branch-${VER} \ - ${WRKSRC}/libdivecomputer +# It's possible to run the tests, but they fail. +# First, add the subsurface/large-anonymous-sample-data repo to DISTFILES. +# Add archive/xz to the TEST_DEPENDS. +# To TEST_ENV add QT_PLUGIN_PATH and QT_QPA_PLATFORM_PLUGIN_PATH. +# Watch tests fail. +NO_TEST = Yes do-gen: ${AUTOCONF_ENV} autoreconf -f -i ${WRKSRC}/libdivecomputer pre-configure: - mkdir -p ${WRKSRC}/libdivecomputer/build + cd ${WRKSRC}; mkdir -p libdivecomputer/build gmaps/build + cd ${WRKSRC}/gmaps/build && ${MODQT_QMAKE} -r .. cd ${WRKSRC}/libdivecomputer/build && \ - ${XXCONFIGURE_ENV} ac_cv_path_SED=/usr/bin/sed \ - MKDIR_P="/bin/mkdir -p" ../configure \ + ${XXCONFIGURE_ENV} ../configure \ --without-libusb \ --without-hidapi \ --without-bluez \ @@ -81,14 +83,16 @@ pre-configure: --prefix=${WRKSRC}/libdivecomputer/built pre-build: - cd ${WRKSRC}/libdivecomputer/build && \ - ${MAKE_PROGRAM} && \ - ${MAKE_PROGRAM} install + ${MAKE_ENV} ${MAKE_PROGRAM} -j ${MAKE_JOBS} -C ${WRKSRC}/gmaps/build + ${MAKE_ENV} INSTALL_ROOT=${WRKINST} ${MAKE_PROGRAM} -C ${WRKSRC}/gmaps/build install + + ${MAKE_ENV} ${MAKE_PROGRAM} -j ${MAKE_JOBS} -C ${WRKSRC}/libdivecomputer/build + ${MAKE_ENV} ${MAKE_PROGRAM} -C ${WRKSRC}/libdivecomputer/build install post-build: mkdir -p ${WRKBUILD}/Documentation for f in user-manual user-manual_es user-manual_fr \ - user-manual_ru user-manual_nl; do \ + user-manual_nl; do \ cp ${WRKSRC}/Documentation/$$f.html.git \ ${WRKBUILD}/Documentation/$$f.html; done Index: distinfo =================================================================== RCS file: /cvs/ports/misc/subsurface/distinfo,v diff -u -p -r1.3 distinfo --- distinfo 18 Jul 2019 11:28:49 -0000 1.3 +++ distinfo 13 Nov 2024 13:25:36 -0000 @@ -1,4 +1,6 @@ -SHA256 (Subsurface-4.8.5.tgz) = dHAuxMu+ksIeEltpfHASUgrEzzcPHBuvOTNh4FpB67c= -SHA256 (libdivecomputer-subsurface-branch-4.8.5.tgz) = 1F2kOfLlSS6aRFXz7Hiicly2llZb2egfM8JsQD6sxOc= -SIZE (Subsurface-4.8.5.tgz) = 15063904 -SIZE (libdivecomputer-subsurface-branch-4.8.5.tgz) = 344513 +SHA256 (subsurface-googlemaps-7ce7124b385b2ebac0f72c38b094f436d4fe5c58.tar.gz) = W+fpjimq0xTEn0SncxLTpBa2tyIJIYcblFs+MO1PTro= +SHA256 (subsurface-libdc-a2a5bb53d670dc520bf8035b18681dfdd9b18bfa.tar.gz) = e79t0294tWW6ew7/T6e+zjyKMIQydZhQXdRL4/mOuKg= +SHA256 (subsurface-subsurface-0e7d3a6466be86f281b49564137f3a7001f7a093.tar.gz) = /ZqgSUV7D+VMsPEfDkWCnZLuczg4tAAbbFFuK/0D/8s= +SIZE (subsurface-googlemaps-7ce7124b385b2ebac0f72c38b094f436d4fe5c58.tar.gz) = 18899 +SIZE (subsurface-libdc-a2a5bb53d670dc520bf8035b18681dfdd9b18bfa.tar.gz) = 460163 +SIZE (subsurface-subsurface-0e7d3a6466be86f281b49564137f3a7001f7a093.tar.gz) = 21965502 Index: patches/patch-CMakeLists_txt =================================================================== RCS file: /cvs/ports/misc/subsurface/patches/patch-CMakeLists_txt,v diff -u -p -r1.3 patch-CMakeLists_txt --- patches/patch-CMakeLists_txt 11 Mar 2022 19:38:21 -0000 1.3 +++ patches/patch-CMakeLists_txt 13 Nov 2024 13:25:36 -0000 @@ -1,7 +1,7 @@ Index: CMakeLists.txt --- CMakeLists.txt.orig +++ CMakeLists.txt -@@ -20,6 +20,8 @@ set(CMAKE_MODULE_PATH +@@ -25,11 +25,15 @@ set(CMAKE_MODULE_PATH ) set(CMAKE_AUTOMOC ON) @@ -10,52 +10,89 @@ Index: CMakeLists.txt include(MacroOutOfSourceBuild) MACRO_ENSURE_OUT_OF_SOURCE_BUILD( "We don't support building in source, please create a build folder elsewhere and remember to run git clean -xdf to remove temporary files created by CMake." -@@ -48,6 +50,9 @@ option(USE_WEBENGINE "Use QWebEngine instead of QWebKi + ) + ++set(WRKINST "replaceme" CACHE STRING "") ++ + #Option for memory debugging + option(SUBSURFACE_ASAN_BUILD "enable memory debugging of Subsurface binary" OFF) + +@@ -57,6 +61,9 @@ option(LIBRAW_SUPPORT "enable support for LibRaw image # Options regarding What should we build on subsurface option(MAKE_TESTS "Make the tests" ON) +include_directories(${CMAKE_SOURCE_DIR}/libdivecomputer/built/include) +include_directories(${CMAKE_INSTALL_PREFIX}/include/grantlee5) + - SET(SUBSURFACE_TARGET_EXECUTABLE "DesktopExecutable" CACHE STRING "The type of application, DesktopExecutable or MobileExecutable") - LIST(APPEND SUBSURFACE_ACCEPTED_EXECUTABLES "DesktopExecutable" "MobileExecutable") - SET_PROPERTY(CACHE SUBSURFACE_TARGET_EXECUTABLE PROPERTY STRINGS ${SUBSURFACE_ACCEPTED_EXECUTABLES}) -@@ -123,7 +128,6 @@ include(pkgconfig_helper) + # Option whether we should try to build against Qt6, if it is available + option(BUILD_WITH_QT6 "try to build against Qt6 (incomplete)" OFF) + +@@ -145,7 +152,6 @@ include(pkgconfig_helper) # if you think a module miss anything, take a look on the specific # module file. include(HandleFindGit2) -include(HandleFindLibDiveComputer) - if(${SUBSURFACE_TARGET_EXECUTABLE} MATCHES "DesktopExecutable") - include(HandleFindGrantlee) - include(HandleUserManual) -@@ -267,7 +271,7 @@ if(BLESUPPORT) + include(HandleFtdiSupport) + include(HandleVersionGeneration) + include(RunOnBuildDir) +@@ -188,7 +194,7 @@ endif() + # ended up failing in subtle ways to do what was advertized; in the Qt5 case + # some of the variables didn't get set up, so we'll immediately call it again + # for Qt5 +-find_package(QT NAMES ${CHECK_QT6} Qt5 REQUIRED COMPONENTS Core Widgets) ++find_package(QT NAMES ${CHECK_QT6} Qt5 HINTS "/usr/local/lib/qt5/cmake/Qt5" REQUIRED COMPONENTS Core Widgets) + + # right now there are a few things that don't work with Qt6 + # let's disable them right here and remember our Qt version +@@ -399,7 +405,7 @@ if(NOT ANDROID) endif() #set up the subsurface_link_libraries variable --set(SUBSURFACE_LINK_LIBRARIES ${SUBSURFACE_LINK_LIBRARIES} ${LIBDIVECOMPUTER_LIBRARIES} ${LIBGIT2_LIBRARIES} ${LIBUSB_LIBRARIES}) -+set(SUBSURFACE_LINK_LIBRARIES ${SUBSURFACE_LINK_LIBRARIES} ${LIBGIT2_LIBRARIES} ${LIBUSB_LIBRARIES}) - qt5_add_resources(SUBSURFACE_RESOURCES subsurface.qrc map-widget/qml/map-widget.qrc) +-LIST(APPEND SUBSURFACE_LINK_LIBRARIES ${LIBDIVECOMPUTER_LIBRARIES} ${LIBGIT2_LIBRARIES} ${LIBUSB_LIBRARIES} ${LIBMTP_LIBRARIES}) ++LIST(APPEND SUBSURFACE_LINK_LIBRARIES ${LIBGIT2_LIBRARIES} ${LIBUSB_LIBRARIES} ${LIBMTP_LIBRARIES}) + if (NOT SUBSURFACE_TARGET_EXECUTABLE MATCHES "DownloaderExecutable") + if(USINGQT6) + if(MAPSUPPORT) +@@ -418,6 +424,10 @@ if(DEFINED ENV{LGTM_SRC}) + LIST(APPEND SUBSURFACE_LINK_LIBRARIES -lgssapi_krb5 -lhttp_parser) + endif() ++if (SUBSURFACE_TARGET_EXECUTABLE MATCHES "DesktopExecutable") ++ add_subdirectory(desktop-widgets) ++endif() ++ # include translations -@@ -335,6 +339,9 @@ elseif(${SUBSURFACE_TARGET_EXECUTABLE} MATCHES "Deskto - add_executable(${SUBSURFACE_TARGET} MACOSX_BUNDLE WIN32 ${SUBSURFACE_PKG} ${SUBSURFACE_APP} ${SUBSURFACE_RESOURCES}) - endif() + if (NOT SUBSURFACE_TARGET_EXECUTABLE MATCHES "DownloaderExecutable") + add_subdirectory(translations) +@@ -435,9 +445,6 @@ add_subdirectory(stats) + endif() + add_subdirectory(backend-shared) + +-if (SUBSURFACE_TARGET_EXECUTABLE MATCHES "DesktopExecutable") +- add_subdirectory(desktop-widgets) +-endif() + + # create the executables + if (SUBSURFACE_TARGET_EXECUTABLE MATCHES "MobileExecutable") +@@ -499,6 +506,9 @@ elseif (SUBSURFACE_TARGET_EXECUTABLE MATCHES "DesktopE + add_executable(${SUBSURFACE_TARGET} MACOSX_BUNDLE WIN32 ${SUBSURFACE_PKG} ${SUBSURFACE_APP} ${SUBSURFACE_RESOURCES}) + endif() + add_library(subsurface_dc STATIC IMPORTED) + set_target_properties(subsurface_dc PROPERTIES IMPORTED_LOCATION ${CMAKE_SOURCE_DIR}/libdivecomputer/built/lib/libdivecomputer.a) + - if(FBSUPPORT) - set(FACEBOOK_INTEGRATION facebook_integration) - add_dependencies(facebook_integration subsurface_generated_ui) -@@ -348,6 +355,7 @@ elseif(${SUBSURFACE_TARGET_EXECUTABLE} MATCHES "Deskto - subsurface_statistics + target_link_libraries( + ${SUBSURFACE_TARGET} + subsurface_generated_ui +@@ -509,6 +519,7 @@ elseif (SUBSURFACE_TARGET_EXECUTABLE MATCHES "DesktopE subsurface_models_desktop + subsurface_commands subsurface_corelib + subsurface_dc + subsurface_stats ${SUBSURFACE_LINK_LIBRARIES} ) - add_dependencies(subsurface_desktop_preferences subsurface_generated_ui) -@@ -520,7 +528,7 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") +@@ -716,11 +727,12 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") COMMAND ${MAKENSIS} ${WINDOWSSTAGING}/subsurface.nsi DEPENDS fake_install ) @@ -64,3 +101,9 @@ Index: CMakeLists.txt # the syntax is odd, but this searches for libqtgeoservices_googlemaps.so # in the filesystem below our install-root # different Linux flavors put the plugin in different directories +- file(GLOB_RECURSE GOOGLEMAPS ${CMAKE_SOURCE_DIR}/../install-root/libqtgeoservices_googlemaps.so) ++ SET(GOOGLEMAPS "${WRKINST}/usr/local/lib/qt5/plugins/geoservices/libqtgeoservices_googlemaps.so" CACHE STRING "googlemaps.so") ++ message(STATUS "GOOGLEMAPS=${GOOGLEMAPS}") + if (NOT GOOGLEMAPS) + message(STATUS "Cannot find libqtgeoservices_googlemaps.so") + else() Index: patches/patch-core_git-access_c =================================================================== RCS file: patches/patch-core_git-access_c diff -N patches/patch-core_git-access_c --- patches/patch-core_git-access_c 11 Mar 2022 19:38:21 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,17 +0,0 @@ -https://github.com/subsurface/subsurface/commit/67a717dc057a5936ae1f5820fc6c470524213b97 - -Index: core/git-access.c ---- core/git-access.c.orig -+++ core/git-access.c -@@ -356,11 +356,7 @@ static int try_to_git_merge(git_repository *repo, git_ - } - - git_merge_init_options(&merge_options, GIT_MERGE_OPTIONS_VERSION); --#if !LIBGIT2_VER_MAJOR && LIBGIT2_VER_MINOR > 23 - merge_options.flags = GIT_MERGE_FIND_RENAMES; --#else -- merge_options.tree_flags = GIT_MERGE_TREE_FIND_RENAMES; --#endif - merge_options.file_favor = GIT_MERGE_FILE_FAVOR_UNION; - merge_options.rename_threshold = 100; - if (git_commit_lookup(&local_commit, repo, local_id)) { Index: patches/patch-core_save-git_c =================================================================== RCS file: patches/patch-core_save-git_c diff -N patches/patch-core_save-git_c --- patches/patch-core_save-git_c 11 Mar 2022 19:38:21 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -https://github.com/subsurface/subsurface/commit/67a717dc057a5936ae1f5820fc6c470524213b97 - -Index: core/save-git.c ---- core/save-git.c.orig -+++ core/save-git.c -@@ -1033,10 +1033,8 @@ int update_git_checkout(git_repository *repo, git_obje - - static int get_authorship(git_repository *repo, git_signature **authorp) - { --#if LIBGIT2_VER_MAJOR || LIBGIT2_VER_MINOR >= 20 - if (git_signature_default(authorp, repo) == 0) - return 0; --#endif - /* try to fetch the user info from the OS, otherwise use default values. */ - struct user_info user = { .name = NULL, .email = NULL }; - subsurface_user_info(&user); Index: patches/patch-desktop-widgets_groupedlineedit_cpp =================================================================== RCS file: patches/patch-desktop-widgets_groupedlineedit_cpp diff -N patches/patch-desktop-widgets_groupedlineedit_cpp --- patches/patch-desktop-widgets_groupedlineedit_cpp 11 Mar 2022 19:38:21 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,11 +0,0 @@ -Index: desktop-widgets/groupedlineedit.cpp ---- desktop-widgets/groupedlineedit.cpp.orig -+++ desktop-widgets/groupedlineedit.cpp -@@ -32,6 +32,7 @@ - #include <QScrollBar> - #include <QTextBlock> - #include <QPainter> -+#include <QPainterPath> - #include <QApplication> - #include <QStyle> - #include <QStyleOptionFocusRect> Index: patches/patch-desktop-widgets_mainwindow_cpp =================================================================== RCS file: /cvs/ports/misc/subsurface/patches/patch-desktop-widgets_mainwindow_cpp,v diff -u -p -r1.3 patch-desktop-widgets_mainwindow_cpp --- patches/patch-desktop-widgets_mainwindow_cpp 11 Mar 2022 19:38:21 -0000 1.3 +++ patches/patch-desktop-widgets_mainwindow_cpp 13 Nov 2024 13:25:36 -0000 @@ -1,58 +1,26 @@ Index: desktop-widgets/mainwindow.cpp --- desktop-widgets/mainwindow.cpp.orig +++ desktop-widgets/mainwindow.cpp -@@ -259,7 +259,6 @@ MainWindow::MainWindow() : QMainWindow(), - memset(©PasteDive, 0, sizeof(copyPasteDive)); - memset(&what, 0, sizeof(what)); +@@ -209,7 +209,6 @@ MainWindow::MainWindow() : + ui.menuHelp->removeAction(ui.actionUserManual); + #endif - updateManager = new UpdateManager(this); undoAction = Command::undoAction(this); redoAction = Command::redoAction(this); - undoAction->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Z)); -@@ -1276,14 +1275,6 @@ void MainWindow::on_actionAboutSubsurface_triggered() - dlg.exec(); - } + undoAction->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_Z)); +@@ -852,14 +851,6 @@ void MainWindow::on_actionAboutSubsurface_triggered() + SubsurfaceAbout dlg(this); + dlg.exec(); +-} +- -void MainWindow::on_action_Check_for_Updates_triggered() -{ - if (!updateManager) - updateManager = new UpdateManager(this); - - updateManager->checkForUpdates(); --} -- - void MainWindow::on_actionUserManual_triggered() - { - #ifndef NO_USERMANUAL -@@ -1445,31 +1436,11 @@ void MainWindow::readSettings() - - loadRecentFiles(); - if (firstRun) { -- checkSurvey(); - firstRun = false; - } } - #undef TOOLBOX_PREF_BUTTON -- --void MainWindow::checkSurvey() --{ -- QSettings s; -- s.beginGroup("UserSurvey"); -- if (!s.contains("FirstUse42")) { -- QVariant value = QDate().currentDate(); -- s.setValue("FirstUse42", value); -- } -- // wait a week for production versions, but not at all for non-tagged builds -- int waitTime = 7; -- QDate firstUse42 = s.value("FirstUse42").toDate(); -- if (run_survey || (firstUse42.daysTo(QDate().currentDate()) > waitTime && !s.contains("SurveyDone"))) { -- if (!survey) -- survey = new UserSurvey(this); -- survey->show(); -- } -- s.endGroup(); --} - - void MainWindow::writeSettings() - { + void MainWindow::on_actionUserManual_triggered() Index: patches/patch-desktop-widgets_mainwindow_h =================================================================== RCS file: /cvs/ports/misc/subsurface/patches/patch-desktop-widgets_mainwindow_h,v diff -u -p -r1.3 patch-desktop-widgets_mainwindow_h --- patches/patch-desktop-widgets_mainwindow_h 11 Mar 2022 19:38:21 -0000 1.3 +++ patches/patch-desktop-widgets_mainwindow_h 13 Nov 2024 13:25:36 -0000 @@ -1,19 +1,11 @@ Index: desktop-widgets/mainwindow.h --- desktop-widgets/mainwindow.h.orig +++ desktop-widgets/mainwindow.h -@@ -71,7 +71,6 @@ class MainWindow : public QMainWindow { (public) - void cleanUpEmpty(); - void setToolButtonsEnabled(bool enabled); - void printPlan(); -- void checkSurvey(); - void setApplicationState(const QByteArray& state); - void setStateProperties(const QByteArray& state, const PropertyList& tl, const PropertyList& tr, const PropertyList& bl,const PropertyList& br); - bool inPlanner(); -@@ -130,7 +129,6 @@ slots: - void on_actionUserSurvey_triggered(); +@@ -125,7 +125,6 @@ slots: + void on_actionUserManual_triggered(); void on_actionDivePlanner_triggered(); void on_actionReplanDive_triggered(); - void on_action_Check_for_Updates_triggered(); - void on_actionDiveSiteEdit_triggered(); - void selectionChanged(); + void divesSelected(const std::vector<dive *> &selection, dive *currentDive, int currentDC); + void initialUiSetup(); Index: patches/patch-desktop-widgets_mainwindow_ui =================================================================== RCS file: /cvs/ports/misc/subsurface/patches/patch-desktop-widgets_mainwindow_ui,v diff -u -p -r1.3 patch-desktop-widgets_mainwindow_ui --- patches/patch-desktop-widgets_mainwindow_ui 11 Mar 2022 19:38:21 -0000 1.3 +++ patches/patch-desktop-widgets_mainwindow_ui 13 Nov 2024 13:25:36 -0000 @@ -1,14 +1,14 @@ Index: desktop-widgets/mainwindow.ui --- desktop-widgets/mainwindow.ui.orig +++ desktop-widgets/mainwindow.ui -@@ -114,7 +114,6 @@ +@@ -107,7 +107,6 @@ <string>&Help</string> </property> <addaction name="actionAboutSubsurface"/> - <addaction name="action_Check_for_Updates"/> - <addaction name="actionUserSurvey"/> <addaction name="actionUserManual"/> </widget> + <widget class="QMenu" name="menuImport"> @@ -399,11 +398,6 @@ </property> <property name="shortcut"> Index: patches/patch-libdivecomputer_src_serial_posix_c =================================================================== RCS file: patches/patch-libdivecomputer_src_serial_posix_c diff -N patches/patch-libdivecomputer_src_serial_posix_c --- patches/patch-libdivecomputer_src_serial_posix_c 11 Mar 2022 19:38:21 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,11 +0,0 @@ -Index: libdivecomputer/src/serial_posix.c ---- libdivecomputer/src/serial_posix.c.orig -+++ libdivecomputer/src/serial_posix.c -@@ -23,6 +23,7 @@ - #include "config.h" - #endif - -+#include <sys/select.h> - #include <stdlib.h> // malloc, free - #include <string.h> // strerror - #include <errno.h> // errno Index: patches/patch-scripts_get-version =================================================================== RCS file: patches/patch-scripts_get-version diff -N patches/patch-scripts_get-version --- patches/patch-scripts_get-version 11 Mar 2022 19:38:21 -0000 1.4 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,21 +0,0 @@ -Index: scripts/get-version ---- scripts/get-version.orig -+++ scripts/get-version -@@ -18,15 +18,14 @@ os=$1 - if [ $# -eq 2 ] && [ "$2" ]; then - v0=$2 - else -- cmd="git describe --abbrev=12" -- v0=$($cmd) || v0=$(cat .gitversion) || croak "odd; command '$cmd' failed" -+ v0="v4.8.5" - fi - - # strip off the 'v' prefix, if any - v0=${v0#v} - - case $os in -- linux) -+ openbsd|linux) - v=$v0 - ;; - darwin) Index: patches/patch-tests_CMakeLists_txt =================================================================== RCS file: /cvs/ports/misc/subsurface/patches/patch-tests_CMakeLists_txt,v diff -u -p -r1.2 patch-tests_CMakeLists_txt --- patches/patch-tests_CMakeLists_txt 11 Mar 2022 19:38:21 -0000 1.2 +++ patches/patch-tests_CMakeLists_txt 13 Nov 2024 13:25:36 -0000 @@ -1,11 +1,19 @@ Index: tests/CMakeLists.txt --- tests/CMakeLists.txt.orig +++ tests/CMakeLists.txt -@@ -45,6 +45,7 @@ macro(TEST NAME FILE) - target_link_libraries( - ${NAME} +@@ -64,6 +64,7 @@ function(TEST NAME FILE) + subsurface_backend_shared + ${TEST_SPECIFIC_LIBRARIES} subsurface_corelib + subsurface_dc RESOURCE_LIBRARY ${QT_TEST_LIBRARIES} ${SUBSURFACE_LINK_LIBRARIES} +@@ -99,6 +100,7 @@ add_executable(TestQML testqml.cpp) + target_link_libraries( + TestQML + subsurface_corelib ++ subsurface_dc + RESOURCE_LIBRARY + ${QT_TEST_LIBRARIES} + ${SUBSURFACE_LINK_LIBRARIES} Index: patches/patch-tests_testprofile_cpp =================================================================== RCS file: patches/patch-tests_testprofile_cpp diff -N patches/patch-tests_testprofile_cpp --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-tests_testprofile_cpp 13 Nov 2024 13:25:36 -0000 @@ -0,0 +1,11 @@ +Index: tests/testprofile.cpp +--- tests/testprofile.cpp.orig ++++ tests/testprofile.cpp +@@ -9,6 +9,7 @@ + #include "core/save-profiledata.h" + #include "core/pref.h" + #include "QTextCodec" ++#include <locale.h> + + // This test compares the content of struct profile against a known reference version for a list + // of dives to prevent accidental regressions. Thus is you change anything in the profile this Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/misc/subsurface/pkg/PLIST,v diff -u -p -r1.3 PLIST --- pkg/PLIST 11 Mar 2022 19:38:21 -0000 1.3 +++ pkg/PLIST 13 Nov 2024 13:25:36 -0000 @@ -1,9 +1,10 @@ @bin bin/subsurface @comment bin/subsurface.debug +@so lib/qt5/plugins/geoservices/libqtgeoservices_googlemaps.so share/applications/subsurface.desktop share/icons/hicolor/scalable/apps/subsurface-icon.svg share/metainfo/ -share/metainfo/subsurface.appdata.xml +share/metainfo/subsurface.metainfo.xml share/subsurface/ share/subsurface/Documentation/ share/subsurface/Documentation/README.md @@ -13,13 +14,13 @@ share/subsurface/Documentation/images/ share/subsurface/Documentation/images/APD.jpg share/subsurface/Documentation/images/APDComputer.jpg share/subsurface/Documentation/images/APD_CSVimportF22.jpg -share/subsurface/Documentation/images/AddDive1_f22.jpg -share/subsurface/Documentation/images/AddDive3_f22.jpg +share/subsurface/Documentation/images/AddDive1.jpg +share/subsurface/Documentation/images/AddDive3.jpg share/subsurface/Documentation/images/BlueEditBar_f22.jpg share/subsurface/Documentation/images/Bookmarks.jpg -share/subsurface/Documentation/images/CCR_b1.jpg -share/subsurface/Documentation/images/CCR_b2.jpg -share/subsurface/Documentation/images/CCR_b3.jpg +share/subsurface/Documentation/images/CCR_b1.png +share/subsurface/Documentation/images/CCR_b2.png +share/subsurface/Documentation/images/CCR_b3.png share/subsurface/Documentation/images/CCR_bailout.jpg share/subsurface/Documentation/images/CCR_dive_ceilingF22.jpg share/subsurface/Documentation/images/CCR_dive_profile_f22.jpg @@ -37,18 +38,30 @@ share/subsurface/Documentation/images/Cy share/subsurface/Documentation/images/DC_gas-dialogue1_f20.jpg share/subsurface/Documentation/images/DC_gas-dialogue2_f20.jpg share/subsurface/Documentation/images/DC_import_Bluetooth.jpg -share/subsurface/Documentation/images/DC_import_Bluetooth_Windows.png +share/subsurface/Documentation/images/DC_import_Bluetooth_Windows.jpg share/subsurface/Documentation/images/DC_import_f20.jpg share/subsurface/Documentation/images/DiveListOptions.jpg share/subsurface/Documentation/images/DiveModeChange.jpg share/subsurface/Documentation/images/DiveProfile1_f20.jpg share/subsurface/Documentation/images/DiveProfile2_f20.jpg share/subsurface/Documentation/images/DiveProfile3_f20.jpg +share/subsurface/Documentation/images/DiveSiteDelete.jpg +share/subsurface/Documentation/images/DiveSiteEdit.jpg +share/subsurface/Documentation/images/DiveSiteInsert.jpg +share/subsurface/Documentation/images/DiveSiteMerge.jpg +share/subsurface/Documentation/images/DiveSitesTab.jpg share/subsurface/Documentation/images/Divelogs1.jpg share/subsurface/Documentation/images/DownloadGPS.jpg share/subsurface/Documentation/images/Export_f20.jpg share/subsurface/Documentation/images/ExtraDataTab_f20.jpg -share/subsurface/Documentation/images/Filterpanel.jpg +share/subsurface/Documentation/images/Filter-LocTemp.png +share/subsurface/Documentation/images/Filter-LocTempWeek.png +share/subsurface/Documentation/images/Filter-LocTempWeekVis.png +share/subsurface/Documentation/images/FilterAND.png +share/subsurface/Documentation/images/FilterConstraints.png +share/subsurface/Documentation/images/FilterFullText.png +share/subsurface/Documentation/images/FilterOR.png +share/subsurface/Documentation/images/FilterWindowBar.jpg share/subsurface/Documentation/images/FindMovedImages1.jpg share/subsurface/Documentation/images/GasPressureBarGraph.jpg share/subsurface/Documentation/images/Globe_image1.jpg @@ -57,7 +70,9 @@ share/subsurface/Documentation/images/Gl share/subsurface/Documentation/images/Group2.jpg share/subsurface/Documentation/images/Heatmap.jpg share/subsurface/Documentation/images/Import1_f20.jpg +share/subsurface/Documentation/images/Import_csv.jpg share/subsurface/Documentation/images/InfoBox2.jpg +share/subsurface/Documentation/images/Infotab.jpg share/subsurface/Documentation/images/LOffice_field_options.jpg share/subsurface/Documentation/images/LOffice_save_as_options.jpg share/subsurface/Documentation/images/LOffice_spreadsheetdata.jpg @@ -71,33 +86,58 @@ share/subsurface/Documentation/images/Lo share/subsurface/Documentation/images/LoadImage5_f20.jpg share/subsurface/Documentation/images/LoadImage6_f20.jpg share/subsurface/Documentation/images/Location1.jpg +share/subsurface/Documentation/images/MainWindow.jpg share/subsurface/Documentation/images/MapMenu.jpg share/subsurface/Documentation/images/MeasuringBar.png share/subsurface/Documentation/images/MergedDive.png share/subsurface/Documentation/images/MkVI.jpeg share/subsurface/Documentation/images/MobileCredentials.jpg share/subsurface/Documentation/images/MobileGpsMenu.jpg -share/subsurface/Documentation/images/PlannerWindow1.jpg -share/subsurface/Documentation/images/Planner_CCR.jpg -share/subsurface/Documentation/images/Planner_OC_deco.jpg -share/subsurface/Documentation/images/Planner_OC_rec1.jpg -share/subsurface/Documentation/images/Planner_OC_rec2.jpg -share/subsurface/Documentation/images/Planner_pSCR.jpg -share/subsurface/Documentation/images/Pref1.jpg -share/subsurface/Documentation/images/Pref1_f23.jpg -share/subsurface/Documentation/images/Pref2_f23.jpg -share/subsurface/Documentation/images/Pref3_f23.jpg -share/subsurface/Documentation/images/Pref4_f23.jpg -share/subsurface/Documentation/images/Pref5_f23.jpg -share/subsurface/Documentation/images/Pref7_f23.jpg +share/subsurface/Documentation/images/Newcyl-Initial.png +share/subsurface/Documentation/images/Newcyl-create.png +share/subsurface/Documentation/images/Newcyl-final.png +share/subsurface/Documentation/images/Newcyl-name.png +share/subsurface/Documentation/images/Newcyl-selection.png +share/subsurface/Documentation/images/PlannerWindow1.png +share/subsurface/Documentation/images/Planner_CCR.png +share/subsurface/Documentation/images/Planner_OC_deco.png +share/subsurface/Documentation/images/Planner_OC_gas_for_CCR.png +share/subsurface/Documentation/images/Planner_OC_rec1.png +share/subsurface/Documentation/images/Planner_OC_rec2.png +share/subsurface/Documentation/images/Planner_issues.png +share/subsurface/Documentation/images/Planner_pSCR.png +share/subsurface/Documentation/images/Pref_cloud.jpg +share/subsurface/Documentation/images/Pref_display.jpg +share/subsurface/Documentation/images/Pref_downld.jpg +share/subsurface/Documentation/images/Pref_eqpmnt.jpg +share/subsurface/Documentation/images/Pref_georef.jpg +share/subsurface/Documentation/images/Pref_lang.jpg +share/subsurface/Documentation/images/Pref_log.jpg +share/subsurface/Documentation/images/Pref_media.jpg +share/subsurface/Documentation/images/Pref_network.jpg +share/subsurface/Documentation/images/Pref_reset.jpg +share/subsurface/Documentation/images/Pref_tech.jpg +share/subsurface/Documentation/images/Pref_units.jpg share/subsurface/Documentation/images/Print1_f22.jpg share/subsurface/Documentation/images/Print_flow_layout_f22.jpg share/subsurface/Documentation/images/Print_print_f22.jpg share/subsurface/Documentation/images/Print_summarylist_f22.jpg share/subsurface/Documentation/images/Printpreview.jpg share/subsurface/Documentation/images/Profile2.jpg +share/subsurface/Documentation/images/Screenshot-gitk-subsurface-1.png share/subsurface/Documentation/images/ShowCylinders_f20.jpg share/subsurface/Documentation/images/SplitDive3a.jpg +share/subsurface/Documentation/images/StatsBarchartHorizontal.jpg +share/subsurface/Documentation/images/StatsBarchartSubdivided.jpg +share/subsurface/Documentation/images/StatsCategoricalData.jpg +share/subsurface/Documentation/images/StatsCountsData.jpg +share/subsurface/Documentation/images/StatsDataTypes.jpg +share/subsurface/Documentation/images/StatsGraphAxes.jpg +share/subsurface/Documentation/images/StatsGraphOptions.jpg +share/subsurface/Documentation/images/StatsPanel.jpg +share/subsurface/Documentation/images/StatsRegression.jpg +share/subsurface/Documentation/images/StatsRestricted.jpg +share/subsurface/Documentation/images/StatsRestrictedGraph.jpg share/subsurface/Documentation/images/Subsurface4Banner.jpg share/subsurface/Documentation/images/Template1_f22.jpg share/subsurface/Documentation/images/Template2_f22.jpg @@ -109,18 +149,21 @@ share/subsurface/Documentation/images/We share/subsurface/Documentation/images/Win_SaveCSV1.jpg share/subsurface/Documentation/images/Win_SaveCSV2.jpg share/subsurface/Documentation/images/Win_SaveCSV3.jpg +share/subsurface/Documentation/images/atmpress.jpg share/subsurface/Documentation/images/csv_import1_f20.jpg share/subsurface/Documentation/images/csv_import2_f20.jpg -share/subsurface/Documentation/images/facebook1.jpg -share/subsurface/Documentation/images/facebook2.jpg +share/subsurface/Documentation/images/dc_management.jpg +share/subsurface/Documentation/images/gpx_read.jpg share/subsurface/Documentation/images/halcyon_RB80.jpg share/subsurface/Documentation/images/icons/ share/subsurface/Documentation/images/icons/EAD.jpg +share/subsurface/Documentation/images/icons/GFLow.jpg share/subsurface/Documentation/images/icons/Galileo.jpg share/subsurface/Documentation/images/icons/HW_DR5.jpg share/subsurface/Documentation/images/icons/HW_xdeepblack.jpg share/subsurface/Documentation/images/icons/He.jpg share/subsurface/Documentation/images/icons/Heartbutton.png +share/subsurface/Documentation/images/icons/InfoBox.png share/subsurface/Documentation/images/icons/MOD.jpg share/subsurface/Documentation/images/icons/MapViewMinus.jpg share/subsurface/Documentation/images/icons/MapViewMode.jpg @@ -152,29 +195,33 @@ share/subsurface/Documentation/images/ic share/subsurface/Documentation/images/icons/ruler.jpg share/subsurface/Documentation/images/icons/scale.jpg share/subsurface/Documentation/images/icons/suuntologo.jpg +share/subsurface/Documentation/images/icons/tissue.jpg share/subsurface/Documentation/images/icons/tissues.jpg share/subsurface/Documentation/images/icons/usb.jpg share/subsurface/Documentation/images/icons/warning2.png share/subsurface/Documentation/images/iphone.jpg -share/subsurface/Documentation/images/main_window_f22.jpg share/subsurface/Documentation/images/mapview_f20.jpg share/subsurface/Documentation/images/multicylinder_dive.jpg share/subsurface/Documentation/images/pSCR_profile.jpg share/subsurface/Documentation/images/pSCR_profile_bailout.jpg -share/subsurface/Documentation/images/planner1.jpg +share/subsurface/Documentation/images/planner1.png +share/subsurface/Documentation/images/planner2.png share/subsurface/Documentation/images/print2_f22.jpg share/subsurface/Documentation/images/profile_symbols.jpg share/subsurface/Documentation/images/pscr_b1.jpg share/subsurface/Documentation/images/pscr_b2.jpg +share/subsurface/Documentation/images/sensors-import.png +share/subsurface/Documentation/images/sensors-moved.png +share/subsurface/Documentation/images/sensors-newcylinder.png share/subsurface/Documentation/images/sidemount1.jpg share/subsurface/Documentation/images/smtk2ssrf.jpg share/subsurface/Documentation/images/strk2ssrf_web.jpg share/subsurface/Documentation/images/texexample.png share/subsurface/Documentation/images/tissueHeatmap.jpg +share/subsurface/Documentation/images/undo.jpg share/subsurface/Documentation/user-manual.html share/subsurface/Documentation/user-manual_es.html share/subsurface/Documentation/user-manual_fr.html -share/subsurface/Documentation/user-manual_ru.html share/subsurface/printing_templates/ share/subsurface/printing_templates/Flowlayout.html share/subsurface/printing_templates/One Dive.html @@ -185,10 +232,10 @@ share/subsurface/printing_templates/stat share/subsurface/printing_templates/statistics/Default.html share/subsurface/theme/ share/subsurface/theme/dive_export.html -share/subsurface/theme/jqplot.canvasAxisTickRenderer.min.js -share/subsurface/theme/jqplot.canvasTextRenderer.min.js -share/subsurface/theme/jqplot.highlighter.min.js -share/subsurface/theme/jquery.jqplot.css +share/subsurface/theme/jqplot.canvasAxisTickRenderer.js +share/subsurface/theme/jqplot.canvasTextRenderer.js +share/subsurface/theme/jqplot.highlighter.js +share/subsurface/theme/jquery.jqplot.min.css share/subsurface/theme/jquery.jqplot.min.js share/subsurface/theme/jquery.min.js share/subsurface/theme/light.css @@ -210,8 +257,9 @@ share/subsurface/translations/subsurface share/subsurface/translations/subsurface_fi_FI.qm share/subsurface/translations/subsurface_fr_FR.qm share/subsurface/translations/subsurface_he.qm +share/subsurface/translations/subsurface_hr_HR.qm share/subsurface/translations/subsurface_it_IT.qm -share/subsurface/translations/subsurface_lv_LV.qm +share/subsurface/translations/subsurface_ko_KR.qm share/subsurface/translations/subsurface_nb_NO.qm share/subsurface/translations/subsurface_nl_NL.qm share/subsurface/translations/subsurface_pl_PL.qm @@ -222,7 +270,6 @@ share/subsurface/translations/subsurface share/subsurface/translations/subsurface_sk_SK.qm share/subsurface/translations/subsurface_source.qm share/subsurface/translations/subsurface_sv_SE.qm -share/subsurface/translations/subsurface_tr.qm share/subsurface/translations/subsurface_zh_TW.qm @tag update-desktop-database @tag gtk-update-icon-cache %D/share/icons/hicolor