Download raw body.
update: misc/subsurface -> 6.0.5283
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
update: misc/subsurface -> 6.0.5283