Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] Subsurface
@ 2021-11-21 15:59 adbrown101
  2021-11-21 18:39 ` [PR REVIEW] Subsurface ericonr
                   ` (28 more replies)
  0 siblings, 29 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-21 15:59 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1280 bytes --]

There is a new pull request by adbrown101 against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 5815 bytes --]

From de00d00e5c2be7db4c70c42f7bfcb41e8e02ec1d Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Sun, 21 Nov 2021 15:44:57 +0000
Subject: [PATCH 1/3] New package: googlemaps-.0.0.0.2

---
 srcpkgs/googlemaps/template | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 srcpkgs/googlemaps/template

diff --git a/srcpkgs/googlemaps/template b/srcpkgs/googlemaps/template
new file mode 100644
index 000000000000..7189dd483217
--- /dev/null
+++ b/srcpkgs/googlemaps/template
@@ -0,0 +1,23 @@
+# Template file for 'googlemaps'
+pkgname=googlemaps
+version=.0.0.0.2
+revision=1
+archs="i686 x86_64 x86_64-musl aarch64 aarch64-musl"
+wrksrc=${pkgname}-v${version}
+build_style=qmake
+hostmakedepends="qt5-qmake"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${pkgname}/archive/v${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
+
+post_install() {
+	vlicense LICENSE.txt
+}

From dfe8a0921c8db7820b24525209f90b847fc87871 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Sun, 21 Nov 2021 15:47:09 +0000
Subject: [PATCH 2/3] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 31 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 34 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..cc381abd575b
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,31 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+archs="i686 x86_64 x86_64-musl aarch64 aarch64-musl"
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From e512220941e297df23750a93e5d041c3bd02fc36 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Sun, 21 Nov 2021 15:48:45 +0000
Subject: [PATCH 3/3] New package: subsurface-5.0.5

---
 srcpkgs/subsurface/template | 24 ++++++++++++++++++++++++
 srcpkgs/subsurface/update   |  3 +++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/subsurface/template
 create mode 100644 srcpkgs/subsurface/update

diff --git a/srcpkgs/subsurface/template b/srcpkgs/subsurface/template
new file mode 100644
index 000000000000..29796a4f6975
--- /dev/null
+++ b/srcpkgs/subsurface/template
@@ -0,0 +1,24 @@
+# Template file for 'subsurface'
+pkgname=subsurface
+version=5.0.5
+revision=1
+archs="i686 x86_64 x86_64-musl aarch64 aarch64-musl"
+wrksrc="Subsurface-${version}"
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="git pkg-config autoconf automake libtool"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/Subsurface-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
diff --git a/srcpkgs/subsurface/update b/srcpkgs/subsurface/update
new file mode 100644
index 000000000000..daa8b5380ea9
--- /dev/null
+++ b/srcpkgs/subsurface/update
@@ -0,0 +1,3 @@
+site="${homepage}/downloads"
+pkgname="Subsurface"
+pattern="${pkgname}-\K[\d\.]+(?=\.tgz)"

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
  2021-11-21 18:39 ` [PR REVIEW] Subsurface ericonr
  2021-11-21 18:39 ` ericonr
@ 2021-11-21 18:39 ` ericonr
  2021-11-21 18:39 ` ericonr
                   ` (25 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ericonr @ 2021-11-21 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 157 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r753838087

Comment:
Same here.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
  2021-11-21 18:39 ` [PR REVIEW] Subsurface ericonr
@ 2021-11-21 18:39 ` ericonr
  2021-11-21 18:39 ` ericonr
                   ` (26 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ericonr @ 2021-11-21 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 214 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r753837988

Comment:
Should be able to build for all archs, so you don't need this line.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
@ 2021-11-21 18:39 ` ericonr
  2021-11-21 18:39 ` ericonr
                   ` (27 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ericonr @ 2021-11-21 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 201 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r753838020

Comment:
That initial dot doesn't belong in the version number.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (3 preceding siblings ...)
  2021-11-21 18:39 ` ericonr
@ 2021-11-21 18:39 ` ericonr
  2021-11-21 18:39 ` ericonr
                   ` (23 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ericonr @ 2021-11-21 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 311 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r753838059

Comment:
I think package name should include `qtplugins`, otherwise it's slightly confusing.

Mageia calls it `qtlocation-plugin-googlemaps`, though that seems a bit long.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (2 preceding siblings ...)
  2021-11-21 18:39 ` ericonr
@ 2021-11-21 18:39 ` ericonr
  2021-11-21 18:39 ` ericonr
                   ` (24 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ericonr @ 2021-11-21 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 156 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r753838117

Comment:
Same here

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (4 preceding siblings ...)
  2021-11-21 18:39 ` ericonr
@ 2021-11-21 18:39 ` ericonr
  2021-11-22 12:30 ` [PR PATCH] [Updated] Subsurface adbrown101
                   ` (22 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ericonr @ 2021-11-21 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 180 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r753838135

Comment:
Break these lines at ~80 columns.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR PATCH] [Updated] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (5 preceding siblings ...)
  2021-11-21 18:39 ` ericonr
@ 2021-11-22 12:30 ` adbrown101
  2021-11-22 13:45 ` adbrown101
                   ` (21 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-22 12:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1285 bytes --]

There is an updated pull request by adbrown101 against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 5815 bytes --]

From de00d00e5c2be7db4c70c42f7bfcb41e8e02ec1d Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Sun, 21 Nov 2021 15:44:57 +0000
Subject: [PATCH 1/3] New package: googlemaps-.0.0.0.2

---
 srcpkgs/googlemaps/template | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 srcpkgs/googlemaps/template

diff --git a/srcpkgs/googlemaps/template b/srcpkgs/googlemaps/template
new file mode 100644
index 000000000000..7189dd483217
--- /dev/null
+++ b/srcpkgs/googlemaps/template
@@ -0,0 +1,23 @@
+# Template file for 'googlemaps'
+pkgname=googlemaps
+version=.0.0.0.2
+revision=1
+archs="i686 x86_64 x86_64-musl aarch64 aarch64-musl"
+wrksrc=${pkgname}-v${version}
+build_style=qmake
+hostmakedepends="qt5-qmake"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${pkgname}/archive/v${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
+
+post_install() {
+	vlicense LICENSE.txt
+}

From dfe8a0921c8db7820b24525209f90b847fc87871 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Sun, 21 Nov 2021 15:47:09 +0000
Subject: [PATCH 2/3] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 31 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 34 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..cc381abd575b
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,31 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+archs="i686 x86_64 x86_64-musl aarch64 aarch64-musl"
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From e512220941e297df23750a93e5d041c3bd02fc36 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Sun, 21 Nov 2021 15:48:45 +0000
Subject: [PATCH 3/3] New package: subsurface-5.0.5

---
 srcpkgs/subsurface/template | 24 ++++++++++++++++++++++++
 srcpkgs/subsurface/update   |  3 +++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/subsurface/template
 create mode 100644 srcpkgs/subsurface/update

diff --git a/srcpkgs/subsurface/template b/srcpkgs/subsurface/template
new file mode 100644
index 000000000000..29796a4f6975
--- /dev/null
+++ b/srcpkgs/subsurface/template
@@ -0,0 +1,24 @@
+# Template file for 'subsurface'
+pkgname=subsurface
+version=5.0.5
+revision=1
+archs="i686 x86_64 x86_64-musl aarch64 aarch64-musl"
+wrksrc="Subsurface-${version}"
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="git pkg-config autoconf automake libtool"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/Subsurface-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
diff --git a/srcpkgs/subsurface/update b/srcpkgs/subsurface/update
new file mode 100644
index 000000000000..daa8b5380ea9
--- /dev/null
+++ b/srcpkgs/subsurface/update
@@ -0,0 +1,3 @@
+site="${homepage}/downloads"
+pkgname="Subsurface"
+pattern="${pkgname}-\K[\d\.]+(?=\.tgz)"

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR PATCH] [Updated] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (6 preceding siblings ...)
  2021-11-22 12:30 ` [PR PATCH] [Updated] Subsurface adbrown101
@ 2021-11-22 13:45 ` adbrown101
  2021-11-22 14:45 ` [PR REVIEW] Subsurface adbrown101
                   ` (20 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-22 13:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1285 bytes --]

There is an updated pull request by adbrown101 against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 7018 bytes --]

From d14d546731126d00fbcd42eb053b04c892ddedcc Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Mon, 22 Nov 2021 12:23:26 +0000
Subject: [PATCH 1/4] New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 23 +++++++++++++++++++
 srcpkgs/qtlocation-plugin-googlemaps/update   |  2 ++
 2 files changed, 25 insertions(+)
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/template
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/update

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
new file mode 100644
index 000000000000..3201d3c179c8
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -0,0 +1,23 @@
+# Template file for 'qtlocation-plugin-googlemaps'
+pkgname=qtlocation-plugin-googlemaps
+distpkgnamme=googlemaps
+version=0.0.0.2
+revision=1
+wrksrc=${distpkgname}-v.${version}
+build_style=qmake
+hostmakedepends="qt5-qmake"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${distpkgname}/archive/v.${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
+
+post_install() {
+	vlicense LICENSE.txt
+}
diff --git a/srcpkgs/qtlocation-plugin-googlemaps/update b/srcpkgs/qtlocation-plugin-googlemaps/update
new file mode 100644
index 000000000000..7b68f9be62e3
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/update
@@ -0,0 +1,2 @@
+pkgname=googlemaps
+pattern="v\.\K[\d\.]+(?=\.tar\.gz)"

From 75949d40ee85f7ebbb0df929745b1543c2884bd3 Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Mon, 22 Nov 2021 12:27:42 +0000
Subject: [PATCH 2/4] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 30 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 33 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..30b595dfd170
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,30 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From e4c877286d525a45e2ff90f9af6a355a089a04fd Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Mon, 22 Nov 2021 12:28:57 +0000
Subject: [PATCH 3/4] New package: subsurface-5.0.5

---
 srcpkgs/subsurface/template | 28 ++++++++++++++++++++++++++++
 srcpkgs/subsurface/update   |  3 +++
 2 files changed, 31 insertions(+)
 create mode 100644 srcpkgs/subsurface/template
 create mode 100644 srcpkgs/subsurface/update

diff --git a/srcpkgs/subsurface/template b/srcpkgs/subsurface/template
new file mode 100644
index 000000000000..bdaac7c1f13c
--- /dev/null
+++ b/srcpkgs/subsurface/template
@@ -0,0 +1,28 @@
+# Template file for 'subsurface'
+pkgname=subsurface
+version=5.0.5
+revision=1
+wrksrc="Subsurface-${version}"
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
+-DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="git pkg-config autoconf automake libtool"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
+sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
+libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel
+qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel
+qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface qtlocation-plugin-googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/Subsurface-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
diff --git a/srcpkgs/subsurface/update b/srcpkgs/subsurface/update
new file mode 100644
index 000000000000..daa8b5380ea9
--- /dev/null
+++ b/srcpkgs/subsurface/update
@@ -0,0 +1,3 @@
+site="${homepage}/downloads"
+pkgname="Subsurface"
+pattern="${pkgname}-\K[\d\.]+(?=\.tgz)"

From cad1a72db0e8563c53b42e190f349c6c3b80163c Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Mon, 22 Nov 2021 13:45:27 +0000
Subject: [PATCH 4/4] spelling

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
index 3201d3c179c8..e83b2e1debda 100644
--- a/srcpkgs/qtlocation-plugin-googlemaps/template
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -1,6 +1,6 @@
 # Template file for 'qtlocation-plugin-googlemaps'
 pkgname=qtlocation-plugin-googlemaps
-distpkgnamme=googlemaps
+distpkgname=googlemaps
 version=0.0.0.2
 revision=1
 wrksrc=${distpkgname}-v.${version}

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (7 preceding siblings ...)
  2021-11-22 13:45 ` adbrown101
@ 2021-11-22 14:45 ` adbrown101
  2021-11-22 14:45 ` adbrown101
                   ` (19 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-22 14:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New review comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r754344933

Comment:
Done

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (8 preceding siblings ...)
  2021-11-22 14:45 ` [PR REVIEW] Subsurface adbrown101
@ 2021-11-22 14:45 ` adbrown101
  2021-11-22 14:46 ` adbrown101
                   ` (18 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-22 14:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New review comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r754345088

Comment:
Done

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (9 preceding siblings ...)
  2021-11-22 14:45 ` adbrown101
@ 2021-11-22 14:46 ` adbrown101
  2021-11-22 14:46 ` adbrown101
                   ` (17 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-22 14:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New review comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r754345665

Comment:
Done

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (10 preceding siblings ...)
  2021-11-22 14:46 ` adbrown101
@ 2021-11-22 14:46 ` adbrown101
  2021-11-22 14:46 ` adbrown101
                   ` (16 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-22 14:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New review comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r754345823

Comment:
Done

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (11 preceding siblings ...)
  2021-11-22 14:46 ` adbrown101
@ 2021-11-22 14:46 ` adbrown101
  2021-11-22 14:46 ` adbrown101
                   ` (15 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-22 14:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New review comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r754345979

Comment:
Done

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (12 preceding siblings ...)
  2021-11-22 14:46 ` adbrown101
@ 2021-11-22 14:46 ` adbrown101
  2021-11-24  9:25 ` [PR PATCH] [Updated] Subsurface adbrown101
                   ` (14 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-22 14:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New review comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r754346094

Comment:
Done

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR PATCH] [Updated] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (13 preceding siblings ...)
  2021-11-22 14:46 ` adbrown101
@ 2021-11-24  9:25 ` adbrown101
  2021-11-24 12:08 ` [PR REVIEW] Subsurface adbrown101
                   ` (13 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-24  9:25 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1285 bytes --]

There is an updated pull request by adbrown101 against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 7018 bytes --]

From d14d546731126d00fbcd42eb053b04c892ddedcc Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Mon, 22 Nov 2021 12:23:26 +0000
Subject: [PATCH 1/4] New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 23 +++++++++++++++++++
 srcpkgs/qtlocation-plugin-googlemaps/update   |  2 ++
 2 files changed, 25 insertions(+)
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/template
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/update

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
new file mode 100644
index 000000000000..3201d3c179c8
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -0,0 +1,23 @@
+# Template file for 'qtlocation-plugin-googlemaps'
+pkgname=qtlocation-plugin-googlemaps
+distpkgnamme=googlemaps
+version=0.0.0.2
+revision=1
+wrksrc=${distpkgname}-v.${version}
+build_style=qmake
+hostmakedepends="qt5-qmake"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${distpkgname}/archive/v.${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
+
+post_install() {
+	vlicense LICENSE.txt
+}
diff --git a/srcpkgs/qtlocation-plugin-googlemaps/update b/srcpkgs/qtlocation-plugin-googlemaps/update
new file mode 100644
index 000000000000..7b68f9be62e3
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/update
@@ -0,0 +1,2 @@
+pkgname=googlemaps
+pattern="v\.\K[\d\.]+(?=\.tar\.gz)"

From 75949d40ee85f7ebbb0df929745b1543c2884bd3 Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Mon, 22 Nov 2021 12:27:42 +0000
Subject: [PATCH 2/4] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 30 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 33 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..30b595dfd170
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,30 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From e4c877286d525a45e2ff90f9af6a355a089a04fd Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Mon, 22 Nov 2021 12:28:57 +0000
Subject: [PATCH 3/4] New package: subsurface-5.0.5

---
 srcpkgs/subsurface/template | 28 ++++++++++++++++++++++++++++
 srcpkgs/subsurface/update   |  3 +++
 2 files changed, 31 insertions(+)
 create mode 100644 srcpkgs/subsurface/template
 create mode 100644 srcpkgs/subsurface/update

diff --git a/srcpkgs/subsurface/template b/srcpkgs/subsurface/template
new file mode 100644
index 000000000000..bdaac7c1f13c
--- /dev/null
+++ b/srcpkgs/subsurface/template
@@ -0,0 +1,28 @@
+# Template file for 'subsurface'
+pkgname=subsurface
+version=5.0.5
+revision=1
+wrksrc="Subsurface-${version}"
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
+-DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="git pkg-config autoconf automake libtool"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
+sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
+libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel
+qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel
+qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface qtlocation-plugin-googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/Subsurface-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
diff --git a/srcpkgs/subsurface/update b/srcpkgs/subsurface/update
new file mode 100644
index 000000000000..daa8b5380ea9
--- /dev/null
+++ b/srcpkgs/subsurface/update
@@ -0,0 +1,3 @@
+site="${homepage}/downloads"
+pkgname="Subsurface"
+pattern="${pkgname}-\K[\d\.]+(?=\.tgz)"

From cad1a72db0e8563c53b42e190f349c6c3b80163c Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Mon, 22 Nov 2021 13:45:27 +0000
Subject: [PATCH 4/4] spelling

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
index 3201d3c179c8..e83b2e1debda 100644
--- a/srcpkgs/qtlocation-plugin-googlemaps/template
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -1,6 +1,6 @@
 # Template file for 'qtlocation-plugin-googlemaps'
 pkgname=qtlocation-plugin-googlemaps
-distpkgnamme=googlemaps
+distpkgname=googlemaps
 version=0.0.0.2
 revision=1
 wrksrc=${distpkgname}-v.${version}

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (14 preceding siblings ...)
  2021-11-24  9:25 ` [PR PATCH] [Updated] Subsurface adbrown101
@ 2021-11-24 12:08 ` adbrown101
  2021-11-24 12:17 ` Subsurface adbrown101
                   ` (12 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-24 12:08 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 194 bytes --]

New review comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r755997021

Comment:
Breaking configure_args causes xlint to fail

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (15 preceding siblings ...)
  2021-11-24 12:08 ` [PR REVIEW] Subsurface adbrown101
@ 2021-11-24 12:17 ` adbrown101
  2021-11-24 19:36 ` Subsurface Chocimier
                   ` (11 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-24 12:17 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 237 bytes --]

New comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#issuecomment-977823371

Comment:
lint fails because I broke configure_args at 80. Not sure why i686 fails. Builds fine locally

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (16 preceding siblings ...)
  2021-11-24 12:17 ` Subsurface adbrown101
@ 2021-11-24 19:36 ` Chocimier
  2021-11-25 12:04 ` [PR PATCH] [Updated] Subsurface adbrown101
                   ` (10 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: Chocimier @ 2021-11-24 19:36 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 412 bytes --]

New comment by Chocimier on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#issuecomment-978166942

Comment:
- should be named `Subsurface`, then no need for wrksrc
- variables continuation should be indented by one space (that fixes lint as side effect)
- don't do conditional hostmakedepends, move into regular variable
- no need for `Subsurface/update`, defaults work here

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR PATCH] [Updated] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (17 preceding siblings ...)
  2021-11-24 19:36 ` Subsurface Chocimier
@ 2021-11-25 12:04 ` adbrown101
  2021-11-25 12:52 ` adbrown101
                   ` (9 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-25 12:04 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1285 bytes --]

There is an updated pull request by adbrown101 against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 5839 bytes --]

From 23ebfb4d92912bede12170d39f694a43eb70cbbd Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Wed, 24 Nov 2021 09:21:13 +0000
Subject: [PATCH 1/3] New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 23 +++++++++++++++++++
 srcpkgs/qtlocation-plugin-googlemaps/update   |  2 ++
 2 files changed, 25 insertions(+)
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/template
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/update

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
new file mode 100644
index 000000000000..e83b2e1debda
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -0,0 +1,23 @@
+# Template file for 'qtlocation-plugin-googlemaps'
+pkgname=qtlocation-plugin-googlemaps
+distpkgname=googlemaps
+version=0.0.0.2
+revision=1
+wrksrc=${distpkgname}-v.${version}
+build_style=qmake
+hostmakedepends="qt5-qmake"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${distpkgname}/archive/v.${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" qt5-devel"
+fi
+
+post_install() {
+	vlicense LICENSE.txt
+}
diff --git a/srcpkgs/qtlocation-plugin-googlemaps/update b/srcpkgs/qtlocation-plugin-googlemaps/update
new file mode 100644
index 000000000000..7b68f9be62e3
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/update
@@ -0,0 +1,2 @@
+pkgname=googlemaps
+pattern="v\.\K[\d\.]+(?=\.tar\.gz)"

From 642daa4f53674966de214c17e0980cb0c06b436e Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Wed, 24 Nov 2021 09:22:46 +0000
Subject: [PATCH 2/3] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 30 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 33 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..30b595dfd170
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,30 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From 94361feeb0c3085798a4fa6ba0b8810d624f5da0 Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Wed, 24 Nov 2021 09:24:10 +0000
Subject: [PATCH 3/3] New package: Subsurface-5.0.5

changed breaking and capitalised
---
 srcpkgs/Subsurface/template | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 srcpkgs/Subsurface/template

diff --git a/srcpkgs/Subsurface/template b/srcpkgs/Subsurface/template
new file mode 100644
index 000000000000..4bc80569aeeb
--- /dev/null
+++ b/srcpkgs/Subsurface/template
@@ -0,0 +1,24 @@
+# Template file for 'Subsurface'
+pkgname=Subsurface
+version=5.0.5
+revision=1
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
+ -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF
+ -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="pkg-config autoconf automake libtool qt5-devel"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
+ sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
+ libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel
+ qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel
+ qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface qtlocation-plugin-googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR PATCH] [Updated] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (18 preceding siblings ...)
  2021-11-25 12:04 ` [PR PATCH] [Updated] Subsurface adbrown101
@ 2021-11-25 12:52 ` adbrown101
  2021-11-25 18:24 ` adbrown101
                   ` (8 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-25 12:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1285 bytes --]

There is an updated pull request by adbrown101 against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 5752 bytes --]

From 9744b4cf5546552586402c7214303d20bc31fa5f Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Thu, 25 Nov 2021 12:46:07 +0000
Subject: [PATCH 1/3] New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 19 +++++++++++++++++++
 srcpkgs/qtlocation-plugin-googlemaps/update   |  2 ++
 2 files changed, 21 insertions(+)
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/template
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/update

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
new file mode 100644
index 000000000000..754271e3c7da
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -0,0 +1,19 @@
+# Template file for 'qtlocation-plugin-googlemaps'
+pkgname=qtlocation-plugin-googlemaps
+_distpkgname=googlemaps
+version=0.0.0.2
+revision=1
+wrksrc=${_distpkgname}-v.${version}
+build_style=qmake
+hostmakedepends="qt5-qmake qt5-devel"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${_distpkgname}/archive/v.${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+post_install() {
+	vlicense LICENSE.txt
+}
diff --git a/srcpkgs/qtlocation-plugin-googlemaps/update b/srcpkgs/qtlocation-plugin-googlemaps/update
new file mode 100644
index 000000000000..7b68f9be62e3
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/update
@@ -0,0 +1,2 @@
+pkgname=googlemaps
+pattern="v\.\K[\d\.]+(?=\.tar\.gz)"

From cb58c72f35c3e3cf251c5eb380ce9e4d84a2e562 Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Thu, 25 Nov 2021 12:47:23 +0000
Subject: [PATCH 2/3] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 30 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 33 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..30b595dfd170
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,30 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From 1f974df217b1de10714d3df940d408103ff891f7 Mon Sep 17 00:00:00 2001
From: Alan Brown <a.brown@bury.gov.uk>
Date: Thu, 25 Nov 2021 12:48:38 +0000
Subject: [PATCH 3/3] New package: Subsurface-5.0.5

---
 srcpkgs/Subsurface/template | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 srcpkgs/Subsurface/template

diff --git a/srcpkgs/Subsurface/template b/srcpkgs/Subsurface/template
new file mode 100644
index 000000000000..4bc80569aeeb
--- /dev/null
+++ b/srcpkgs/Subsurface/template
@@ -0,0 +1,24 @@
+# Template file for 'Subsurface'
+pkgname=Subsurface
+version=5.0.5
+revision=1
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
+ -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF
+ -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="pkg-config autoconf automake libtool qt5-devel"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
+ sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
+ libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel
+ qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel
+ qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface qtlocation-plugin-googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR PATCH] [Updated] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (19 preceding siblings ...)
  2021-11-25 12:52 ` adbrown101
@ 2021-11-25 18:24 ` adbrown101
  2021-11-25 18:27 ` Subsurface adbrown101
                   ` (7 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-25 18:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1285 bytes --]

There is an updated pull request by adbrown101 against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 5761 bytes --]

From 6d97f4adff12a37979116ec68d6eeb44f708bf55 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:22:14 +0000
Subject: [PATCH 1/3] New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 19 +++++++++++++++++++
 srcpkgs/qtlocation-plugin-googlemaps/update   |  2 ++
 2 files changed, 21 insertions(+)
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/template
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/update

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
new file mode 100644
index 000000000000..754271e3c7da
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -0,0 +1,19 @@
+# Template file for 'qtlocation-plugin-googlemaps'
+pkgname=qtlocation-plugin-googlemaps
+_distpkgname=googlemaps
+version=0.0.0.2
+revision=1
+wrksrc=${_distpkgname}-v.${version}
+build_style=qmake
+hostmakedepends="qt5-qmake qt5-devel"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${_distpkgname}/archive/v.${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+post_install() {
+	vlicense LICENSE.txt
+}
diff --git a/srcpkgs/qtlocation-plugin-googlemaps/update b/srcpkgs/qtlocation-plugin-googlemaps/update
new file mode 100644
index 000000000000..7b68f9be62e3
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/update
@@ -0,0 +1,2 @@
+pkgname=googlemaps
+pattern="v\.\K[\d\.]+(?=\.tar\.gz)"

From 8419888b044803eb07545dbf47b08995651f7906 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:23:04 +0000
Subject: [PATCH 2/3] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 30 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 33 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..30b595dfd170
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,30 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From 2a4a98291b38ed1ca8040206a7c8a49b90ab3be2 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:23:39 +0000
Subject: [PATCH 3/3] New package: Subsurface-5.0.5

---
 srcpkgs/Subsurface/template | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 srcpkgs/Subsurface/template

diff --git a/srcpkgs/Subsurface/template b/srcpkgs/Subsurface/template
new file mode 100644
index 000000000000..4bc80569aeeb
--- /dev/null
+++ b/srcpkgs/Subsurface/template
@@ -0,0 +1,24 @@
+# Template file for 'Subsurface'
+pkgname=Subsurface
+version=5.0.5
+revision=1
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
+ -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF
+ -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="pkg-config autoconf automake libtool qt5-devel"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
+ sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
+ libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel
+ qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel
+ qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface qtlocation-plugin-googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (20 preceding siblings ...)
  2021-11-25 18:24 ` adbrown101
@ 2021-11-25 18:27 ` adbrown101
  2021-11-25 19:31 ` Subsurface ericonr
                   ` (6 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-25 18:27 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 227 bytes --]

New comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#issuecomment-979414482

Comment:
Rebased again to get correct email address on. Will look at test-profile at weekend

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (21 preceding siblings ...)
  2021-11-25 18:27 ` Subsurface adbrown101
@ 2021-11-25 19:31 ` ericonr
  2021-11-26  3:43 ` [PR REVIEW] Subsurface sgn
                   ` (5 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ericonr @ 2021-11-25 19:31 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 221 bytes --]

New comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#issuecomment-979437903

Comment:
Given that it only fails on i686, might be worth reporting to upstream directly.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (22 preceding siblings ...)
  2021-11-25 19:31 ` Subsurface ericonr
@ 2021-11-26  3:43 ` sgn
  2021-11-26  3:52 ` Subsurface sgn
                   ` (4 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: sgn @ 2021-11-26  3:43 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 164 bytes --]

New review comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r757211965

Comment:
Why `shlib_provides`?

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (23 preceding siblings ...)
  2021-11-26  3:43 ` [PR REVIEW] Subsurface sgn
@ 2021-11-26  3:52 ` sgn
  2021-11-26  4:24 ` Subsurface sgn
                   ` (3 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: sgn @ 2021-11-26  3:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 264 bytes --]

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#issuecomment-979677093

Comment:
```
oceanic_common.h:31: warning: "PAGESIZE" redefined                                    
   31 | #define PAGESIZE 0x10
```

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (24 preceding siblings ...)
  2021-11-26  3:52 ` Subsurface sgn
@ 2021-11-26  4:24 ` sgn
  2021-11-26  4:28 ` [PR PATCH] [Updated] Subsurface sgn
                   ` (2 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: sgn @ 2021-11-26  4:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 197 bytes --]

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#issuecomment-979687855

Comment:
https://gist.github.com/sgn/15ce90f26cd367499359dc24148dd007

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR PATCH] [Updated] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (25 preceding siblings ...)
  2021-11-26  4:24 ` Subsurface sgn
@ 2021-11-26  4:28 ` sgn
  2021-11-26 12:56 ` [PR REVIEW] Subsurface adbrown101
  2021-11-26 13:08 ` [PR PATCH] [Updated] Subsurface adbrown101
  28 siblings, 0 replies; 30+ messages in thread
From: sgn @ 2021-11-26  4:28 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1278 bytes --]

There is an updated pull request by sgn against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 44854 bytes --]

From 6d97f4adff12a37979116ec68d6eeb44f708bf55 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:22:14 +0000
Subject: [PATCH 1/6] New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 19 +++++++++++++++++++
 srcpkgs/qtlocation-plugin-googlemaps/update   |  2 ++
 2 files changed, 21 insertions(+)
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/template
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/update

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
new file mode 100644
index 000000000000..754271e3c7da
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -0,0 +1,19 @@
+# Template file for 'qtlocation-plugin-googlemaps'
+pkgname=qtlocation-plugin-googlemaps
+_distpkgname=googlemaps
+version=0.0.0.2
+revision=1
+wrksrc=${_distpkgname}-v.${version}
+build_style=qmake
+hostmakedepends="qt5-qmake qt5-devel"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${_distpkgname}/archive/v.${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+post_install() {
+	vlicense LICENSE.txt
+}
diff --git a/srcpkgs/qtlocation-plugin-googlemaps/update b/srcpkgs/qtlocation-plugin-googlemaps/update
new file mode 100644
index 000000000000..7b68f9be62e3
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/update
@@ -0,0 +1,2 @@
+pkgname=googlemaps
+pattern="v\.\K[\d\.]+(?=\.tar\.gz)"

From 8419888b044803eb07545dbf47b08995651f7906 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:23:04 +0000
Subject: [PATCH 2/6] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 30 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 33 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..30b595dfd170
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,30 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From 2a4a98291b38ed1ca8040206a7c8a49b90ab3be2 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:23:39 +0000
Subject: [PATCH 3/6] New package: Subsurface-5.0.5

---
 srcpkgs/Subsurface/template | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 srcpkgs/Subsurface/template

diff --git a/srcpkgs/Subsurface/template b/srcpkgs/Subsurface/template
new file mode 100644
index 000000000000..4bc80569aeeb
--- /dev/null
+++ b/srcpkgs/Subsurface/template
@@ -0,0 +1,24 @@
+# Template file for 'Subsurface'
+pkgname=Subsurface
+version=5.0.5
+revision=1
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
+ -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF
+ -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="pkg-config autoconf automake libtool qt5-devel"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
+ sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
+ libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel
+ qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel
+ qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface qtlocation-plugin-googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"

From 00e160208fa27d411978986c39e88e1710c71adb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 26 Nov 2021 10:36:04 +0700
Subject: [PATCH 4/6] fixup! New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
index 754271e3c7da..ef301d542273 100644
--- a/srcpkgs/qtlocation-plugin-googlemaps/template
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -1,17 +1,16 @@
 # Template file for 'qtlocation-plugin-googlemaps'
 pkgname=qtlocation-plugin-googlemaps
-_distpkgname=googlemaps
 version=0.0.0.2
 revision=1
-wrksrc=${_distpkgname}-v.${version}
+wrksrc=googlemaps-v.${version}
 build_style=qmake
 hostmakedepends="qt5-qmake qt5-devel"
 makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
-short_desc="Googlemaps plugin for QtLocation"
+short_desc="Google Maps plugin for QtLocation"
 maintainer="Alan Brown <adbrown@rocketmail.com>"
 license="MIT"
 homepage="https://github.com/vladest/googlemaps"
-distfiles="https://github.com/vladest/${_distpkgname}/archive/v.${version}.tar.gz"
+distfiles="https://github.com/vladest/googlemaps/archive/v.${version}.tar.gz"
 checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
 
 post_install() {

From f99ed241fa3452a93e63ac19ea9aeea1475174c0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 26 Nov 2021 10:57:41 +0700
Subject: [PATCH 5/6] fixup! New package: libdivecomputer-subsurface-5.0.5

---
 .../patches/PAGESIZE.patch                    | 873 ++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/template   |   2 +-
 2 files changed, 874 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/libdivecomputer-subsurface/patches/PAGESIZE.patch

diff --git a/srcpkgs/libdivecomputer-subsurface/patches/PAGESIZE.patch b/srcpkgs/libdivecomputer-subsurface/patches/PAGESIZE.patch
new file mode 100644
index 000000000000..7ba54f118098
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/patches/PAGESIZE.patch
@@ -0,0 +1,873 @@
+--- a/src/liquivision_lynx.c
++++ b/src/liquivision_lynx.c
+@@ -61,16 +61,16 @@
+ #define MAXRETRIES 2
+ #define MAXPACKET 12
+ #define SEGMENTSIZE 0x400
+-#define PAGESIZE    0x1000
++#define XPAGESIZE    0x1000
+ #define MEMSIZE     0x200000
+ 
+-#define RB_LOGBOOK_BEGIN         (1 * PAGESIZE)
+-#define RB_LOGBOOK_END           (25 * PAGESIZE)
++#define RB_LOGBOOK_BEGIN         (1 * XPAGESIZE)
++#define RB_LOGBOOK_END           (25 * XPAGESIZE)
+ #define RB_LOGBOOK_SIZE          (RB_LOGBOOK_END - RB_LOGBOOK_BEGIN)
+ #define RB_LOGBOOK_DISTANCE(a,b) ringbuffer_distance (a, b, 1, RB_LOGBOOK_BEGIN, RB_LOGBOOK_END)
+ 
+-#define RB_PROFILE_BEGIN         (25 * PAGESIZE)
+-#define RB_PROFILE_END           (500 * PAGESIZE)
++#define RB_PROFILE_BEGIN         (25 * XPAGESIZE)
++#define RB_PROFILE_END           (500 * XPAGESIZE)
+ #define RB_PROFILE_SIZE          (RB_PROFILE_END - RB_PROFILE_BEGIN)
+ #define RB_PROFILE_DISTANCE(a,b) ringbuffer_distance (a, b, 1, RB_PROFILE_BEGIN, RB_PROFILE_END)
+ 
+@@ -311,8 +311,8 @@ liquivision_lynx_device_read (dc_device_
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	// Get the page and segment number.
+-	unsigned int page    = (address / PAGESIZE);
+-	unsigned int segment = (address % PAGESIZE) / SEGMENTSIZE;
++	unsigned int page    = (address / XPAGESIZE);
++	unsigned int segment = (address % XPAGESIZE) / SEGMENTSIZE;
+ 
+ 	unsigned int nbytes = 0;
+ 	while (nbytes < size) {
+@@ -336,7 +336,7 @@ liquivision_lynx_device_read (dc_device_
+ 
+ 		nbytes += SEGMENTSIZE;
+ 		segment++;
+-		if (segment == (PAGESIZE / SEGMENTSIZE)) {
++		if (segment == (XPAGESIZE / SEGMENTSIZE)) {
+ 			segment = 0;
+ 			page++;
+ 		}
+@@ -410,13 +410,13 @@ liquivision_lynx_device_foreach (dc_devi
+ 	unsigned int headersize = (model == XEN) ? SZ_HEADER_XEN : SZ_HEADER_OTHER;
+ 
+ 	// Get the number of headers per page.
+-	unsigned int npages = PAGESIZE / headersize;
++	unsigned int npages = XPAGESIZE / headersize;
+ 
+ 	// Get the logbook pointers.
+ 	unsigned int begin = array_uint16_le (config + 0x46);
+ 	unsigned int end   = array_uint16_le (config + 0x48);
+-	unsigned int rb_logbook_begin = RB_LOGBOOK_BEGIN + (begin / npages) * PAGESIZE + (begin % npages) * headersize;
+-	unsigned int rb_logbook_end   = RB_LOGBOOK_BEGIN + (end   / npages) * PAGESIZE + (end   % npages) * headersize;
++	unsigned int rb_logbook_begin = RB_LOGBOOK_BEGIN + (begin / npages) * XPAGESIZE + (begin % npages) * headersize;
++	unsigned int rb_logbook_end   = RB_LOGBOOK_BEGIN + (end   / npages) * XPAGESIZE + (end   % npages) * headersize;
+ 	if (rb_logbook_begin < RB_LOGBOOK_BEGIN || rb_logbook_begin > RB_LOGBOOK_END ||
+ 		rb_logbook_end   < RB_LOGBOOK_BEGIN || rb_logbook_end   > RB_LOGBOOK_END) {
+ 		ERROR (abstract->context, "Invalid logbook pointers (%04x, %04x).",
+@@ -478,8 +478,8 @@ liquivision_lynx_device_foreach (dc_devi
+ 			address = RB_LOGBOOK_END;
+ 
+ 		// Skip the padding bytes.
+-		if ((address % PAGESIZE) == 0) {
+-			unsigned int padding = PAGESIZE % headersize;
++		if ((address % XPAGESIZE) == 0) {
++			unsigned int padding = XPAGESIZE % headersize;
+ 			unsigned char dummy[SZ_HEADER_MAX] = {0};
+ 			status = dc_rbstream_read (rblogbook, &progress, dummy, padding);
+ 			if (status != DC_STATUS_SUCCESS) {
+--- a/src/oceanic_atom2.c
++++ b/src/oceanic_atom2.c
+@@ -994,11 +994,11 @@ oceanic_atom2_device_version (dc_device_
+ 	if (!ISINSTANCE (abstract))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+-	if (size < PAGESIZE)
++	if (size < XPAGESIZE)
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	unsigned char command[] = {CMD_VERSION};
+-	dc_status_t rc = oceanic_atom2_transfer (device, command, sizeof (command), ACK, data, PAGESIZE, 1);
++	dc_status_t rc = oceanic_atom2_transfer (device, command, sizeof (command), ACK, data, XPAGESIZE, 1);
+ 	if (rc != DC_STATUS_SUCCESS)
+ 		return rc;
+ 
+@@ -1012,8 +1012,8 @@ oceanic_atom2_device_read (dc_device_t *
+ 	oceanic_atom2_device_t *device = (oceanic_atom2_device_t*) abstract;
+ 	const oceanic_common_layout_t *layout = device->base.layout;
+ 
+-	if ((address % PAGESIZE != 0) ||
+-		(size    % PAGESIZE != 0))
++	if ((address % XPAGESIZE != 0) ||
++		(size    % XPAGESIZE != 0))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	// Pick the correct read command and number of checksum bytes.
+@@ -1037,7 +1037,7 @@ oceanic_atom2_device_read (dc_device_t *
+ 	}
+ 
+ 	// Pick the best pagesize to use.
+-	unsigned int pagesize = device->bigpage * PAGESIZE;
++	unsigned int pagesize = device->bigpage * XPAGESIZE;
+ 
+ 	// High memory state.
+ 	unsigned int highmem = 0;
+@@ -1049,7 +1049,7 @@ oceanic_atom2_device_read (dc_device_t *
+ 			highmem = layout->highmem;
+ 			read_cmd = CMD_READ16HI;
+ 			crc_size = 2;
+-			pagesize = 16 * PAGESIZE;
++			pagesize = 16 * XPAGESIZE;
+ 		}
+ 
+ 		// Calculate the page number after mapping the virtual high memory
+@@ -1058,7 +1058,7 @@ oceanic_atom2_device_read (dc_device_t *
+ 
+ 		if (page != device->cached_page || highmem != device->cached_highmem) {
+ 			// Read the package.
+-			unsigned int number = highmem ? page : page * device->bigpage; // This is always PAGESIZE, even in big page mode.
++			unsigned int number = highmem ? page : page * device->bigpage; // This is always XPAGESIZE, even in big page mode.
+ 			unsigned char command[] = {read_cmd,
+ 					(number >> 8) & 0xFF, // high
+ 					(number     ) & 0xFF, // low
+@@ -1093,8 +1093,8 @@ oceanic_atom2_device_write (dc_device_t
+ {
+ 	oceanic_atom2_device_t *device = (oceanic_atom2_device_t*) abstract;
+ 
+-	if ((address % PAGESIZE != 0) ||
+-		(size    % PAGESIZE != 0))
++	if ((address % XPAGESIZE != 0) ||
++		(size    % XPAGESIZE != 0))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	// Invalidate the cache.
+@@ -1104,7 +1104,7 @@ oceanic_atom2_device_write (dc_device_t
+ 	unsigned int nbytes = 0;
+ 	while (nbytes < size) {
+ 		// Prepare to write the package.
+-		unsigned int number = address / PAGESIZE;
++		unsigned int number = address / XPAGESIZE;
+ 		unsigned char prepare[] = {CMD_WRITE,
+ 				(number >> 8) & 0xFF, // high
+ 				(number     ) & 0xFF, // low
+@@ -1114,16 +1114,16 @@ oceanic_atom2_device_write (dc_device_t
+ 			return rc;
+ 
+ 		// Write the package.
+-		unsigned char command[PAGESIZE + 1] = {0};
+-		memcpy (command, data, PAGESIZE);
+-		command[PAGESIZE] = checksum_add_uint8 (command, PAGESIZE, 0x00);
++		unsigned char command[XPAGESIZE + 1] = {0};
++		memcpy (command, data, XPAGESIZE);
++		command[XPAGESIZE] = checksum_add_uint8 (command, XPAGESIZE, 0x00);
+ 		rc = oceanic_atom2_transfer (device, command, sizeof (command), ACK, NULL, 0, 0);
+ 		if (rc != DC_STATUS_SUCCESS)
+ 			return rc;
+ 
+-		nbytes += PAGESIZE;
+-		address += PAGESIZE;
+-		data += PAGESIZE;
++		nbytes += XPAGESIZE;
++		address += XPAGESIZE;
++		data += XPAGESIZE;
+ 	}
+ 
+ 	return DC_STATUS_SUCCESS;
+--- a/src/oceanic_atom2_parser.c
++++ b/src/oceanic_atom2_parser.c
+@@ -165,8 +165,8 @@ oceanic_atom2_parser_create (dc_parser_t
+ 
+ 	// Set the default values.
+ 	parser->model = model;
+-	parser->headersize = 9 * PAGESIZE / 2;
+-	parser->footersize = 2 * PAGESIZE / 2;
++	parser->headersize = 9 * XPAGESIZE / 2;
++	parser->footersize = 2 * XPAGESIZE / 2;
+ 	if (model == DATAMASK || model == COMPUMASK ||
+ 		model == GEO || model == GEO20 ||
+ 		model == VEO20 || model == VEO30 ||
+@@ -177,30 +177,30 @@ oceanic_atom2_parser_create (dc_parser_t
+ 		model == I200 || model == I200C ||
+ 		model == I300C || model == GEO40 ||
+ 		model == VEO40 || model == I470TC) {
+-		parser->headersize -= PAGESIZE;
++		parser->headersize -= XPAGESIZE;
+ 	} else if (model == VT4 || model == VT41) {
+-		parser->headersize += PAGESIZE;
++		parser->headersize += XPAGESIZE;
+ 	} else if (model == TX1) {
+-		parser->headersize += 2 * PAGESIZE;
++		parser->headersize += 2 * XPAGESIZE;
+ 	} else if (model == ATOM1 || model == I100 ||
+ 		model == PROPLUS4) {
+-		parser->headersize -= 2 * PAGESIZE;
++		parser->headersize -= 2 * XPAGESIZE;
+ 	} else if (model == F10A || model == F10B ||
+ 		model == MUNDIAL2 || model == MUNDIAL3) {
+-		parser->headersize = 3 * PAGESIZE;
++		parser->headersize = 3 * XPAGESIZE;
+ 		parser->footersize = 0;
+ 	} else if (model == F11A || model == F11B) {
+-		parser->headersize = 5 * PAGESIZE;
++		parser->headersize = 5 * XPAGESIZE;
+ 		parser->footersize = 0;
+ 	} else if (model == A300CS || model == VTX ||
+ 		model == I450T || model == I750TC ||
+ 		model == I770R || model == SAGE ||
+ 		model == BEACON) {
+-		parser->headersize = 5 * PAGESIZE;
++		parser->headersize = 5 * XPAGESIZE;
+ 	} else if (model == PROPLUSX) {
+-		parser->headersize = 3 * PAGESIZE;
++		parser->headersize = 3 * XPAGESIZE;
+ 	} else if (model == I550C || model == WISDOM4) {
+-		parser->headersize = 5 * PAGESIZE / 2;
++		parser->headersize = 5 * XPAGESIZE / 2;
+ 	}
+ 
+ 	parser->serial = serial;
+@@ -428,12 +428,12 @@ oceanic_atom2_parser_cache (oceanic_atom
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	// Get the offset to the header and footer sample.
+-	unsigned int header = headersize - PAGESIZE / 2;
++	unsigned int header = headersize - XPAGESIZE / 2;
+ 	unsigned int footer = size - footersize;
+ 	if (parser->model == VT4 || parser->model == VT41 ||
+ 		parser->model == A300AI || parser->model == VISION ||
+ 		parser->model == XPAIR) {
+-		header = 3 * PAGESIZE;
++		header = 3 * XPAGESIZE;
+ 	}
+ 
+ 	// Get the dive mode.
+@@ -660,7 +660,7 @@ oceanic_atom2_parser_vendor (oceanic_ato
+ 		// Get the sample size.
+ 		unsigned int length = samplesize;
+ 		if (sampletype == 0xBB) {
+-			length = PAGESIZE;
++			length = XPAGESIZE;
+ 		}
+ 
+ 		// Vendor specific data
+@@ -738,7 +738,7 @@ oceanic_atom2_parser_samples_foreach (dc
+ 		}
+ 	}
+ 
+-	unsigned int samplesize = PAGESIZE / 2;
++	unsigned int samplesize = XPAGESIZE / 2;
+ 	if (parser->mode == FREEDIVE) {
+ 		if (parser->model == F10A || parser->model == F10B ||
+ 			parser->model == F11A || parser->model == F11B ||
+@@ -754,7 +754,7 @@ oceanic_atom2_parser_samples_foreach (dc
+ 		parser->model == I750TC || parser->model == PROPLUSX ||
+ 		parser->model == I770R || parser->model == I470TC ||
+ 		parser->model == SAGE || parser->model == BEACON) {
+-		samplesize = PAGESIZE;
++		samplesize = XPAGESIZE;
+ 	}
+ 
+ 	unsigned int have_temperature = 1, have_pressure = 1;
+@@ -824,7 +824,7 @@ oceanic_atom2_parser_samples_foreach (dc
+ 		// larger size. Check whether we have that many bytes available.
+ 		unsigned int length = samplesize;
+ 		if (sampletype == 0xBB) {
+-			length = PAGESIZE;
++			length = XPAGESIZE;
+ 			if (offset + length > size - parser->footersize) {
+ 				ERROR (abstract->context, "Buffer overflow detected!");
+ 				return DC_STATUS_DATAFORMAT;
+--- a/src/oceanic_common.c
++++ b/src/oceanic_common.c
+@@ -104,7 +104,7 @@ oceanic_common_match_pattern (const unsi
+ 	unsigned int value = 0;
+ 	unsigned int count = 0;
+ 
+-	for (unsigned int i = 0; i < PAGESIZE; ++i, ++pattern, ++string) {
++	for (unsigned int i = 0; i < XPAGESIZE; ++i, ++pattern, ++string) {
+ 		if (*pattern != '\0') {
+ 			// Compare the pattern.
+ 			if (*pattern != *string)
+@@ -206,7 +206,7 @@ oceanic_common_device_dump (dc_device_t
+ 	device_event_emit (abstract, DC_EVENT_VENDOR, &vendor);
+ 
+ 	return device_dump_read (abstract, dc_buffer_get_data (buffer),
+-		dc_buffer_get_size (buffer), PAGESIZE * device->multipage);
++		dc_buffer_get_size (buffer), XPAGESIZE * device->multipage);
+ }
+ 
+ 
+@@ -235,7 +235,7 @@ oceanic_common_device_logbook (dc_device
+ 	}
+ 
+ 	// Read the pointer data.
+-	unsigned char pointers[PAGESIZE] = {0};
++	unsigned char pointers[XPAGESIZE] = {0};
+ 	rc = dc_device_read (abstract, layout->cf_pointers, pointers, sizeof (pointers));
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to read the memory page.");
+@@ -279,8 +279,8 @@ oceanic_common_device_logbook (dc_device
+ 	}
+ 
+ 	// Update and emit a progress event.
+-	progress->current += PAGESIZE;
+-	progress->maximum += PAGESIZE;
++	progress->current += XPAGESIZE;
++	progress->maximum += XPAGESIZE;
+ 	progress->maximum -= (layout->rb_logbook_end - layout->rb_logbook_begin) - rb_logbook_size;
+ 	device_event_emit (abstract, DC_EVENT_PROGRESS, progress);
+ 
+@@ -298,7 +298,7 @@ oceanic_common_device_logbook (dc_device
+ 
+ 	// Create the ringbuffer stream.
+ 	dc_rbstream_t *rbstream = NULL;
+-	rc = dc_rbstream_new (&rbstream, abstract, PAGESIZE, PAGESIZE * device->multipage, layout->rb_logbook_begin, layout->rb_logbook_end, rb_logbook_end);
++	rc = dc_rbstream_new (&rbstream, abstract, XPAGESIZE, XPAGESIZE * device->multipage, layout->rb_logbook_begin, layout->rb_logbook_end, rb_logbook_end);
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to create the ringbuffer stream.");
+ 		return rc;
+@@ -375,7 +375,7 @@ oceanic_common_device_profile (dc_device
+ 	const oceanic_common_layout_t *layout = device->layout;
+ 
+ 	// Get the pagesize
+-	unsigned int pagesize = layout->highmem ? 16 * PAGESIZE : PAGESIZE;
++	unsigned int pagesize = layout->highmem ? 16 * XPAGESIZE : XPAGESIZE;
+ 
+ 	// Cache the logbook pointer and size.
+ 	const unsigned char *logbooks = dc_buffer_get_data (logbook);
+@@ -460,7 +460,7 @@ oceanic_common_device_profile (dc_device
+ 
+ 	// Create the ringbuffer stream.
+ 	dc_rbstream_t *rbstream = NULL;
+-	rc = dc_rbstream_new (&rbstream, abstract, PAGESIZE, PAGESIZE * device->multipage, layout->rb_profile_begin, layout->rb_profile_end, rb_profile_end);
++	rc = dc_rbstream_new (&rbstream, abstract, XPAGESIZE, XPAGESIZE * device->multipage, layout->rb_profile_begin, layout->rb_profile_end, rb_profile_end);
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to create the ringbuffer stream.");
+ 		return rc;
+@@ -553,7 +553,7 @@ oceanic_common_device_profile (dc_device
+ 			unsigned int value_hi = value & 0xE000;
+ 			unsigned int value_lo = value & 0x0FFF;
+ 			unsigned int npages = ((value_hi >> 1) | value_lo) + 1;
+-			unsigned int length = npages * PAGESIZE;
++			unsigned int length = npages * XPAGESIZE;
+ 			if (rb_entry_size > length) {
+ 				rb_entry_size = length;
+ 			}
+@@ -584,7 +584,7 @@ oceanic_common_device_foreach (dc_device
+ 
+ 	// Enable progress notifications.
+ 	dc_event_progress_t progress = EVENT_PROGRESS_INITIALIZER;
+-	progress.maximum = PAGESIZE +
++	progress.maximum = XPAGESIZE +
+ 		(layout->rb_logbook_end - layout->rb_logbook_begin) +
+ 		(layout->rb_profile_end - layout->rb_profile_begin);
+ 	device_event_emit (abstract, DC_EVENT_PROGRESS, &progress);
+@@ -596,7 +596,7 @@ oceanic_common_device_foreach (dc_device
+ 	device_event_emit (abstract, DC_EVENT_VENDOR, &vendor);
+ 
+ 	// Read the device id.
+-	unsigned char id[PAGESIZE] = {0};
++	unsigned char id[XPAGESIZE] = {0};
+ 	dc_status_t rc = dc_device_read (abstract, layout->cf_devinfo, id, sizeof (id));
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to read the memory page.");
+@@ -604,7 +604,7 @@ oceanic_common_device_foreach (dc_device
+ 	}
+ 
+ 	// Update and emit a progress event.
+-	progress.current += PAGESIZE;
++	progress.current += XPAGESIZE;
+ 	device_event_emit (abstract, DC_EVENT_PROGRESS, &progress);
+ 
+ 	// Emit a device info event.
+--- a/src/oceanic_common.h
++++ b/src/oceanic_common.h
+@@ -28,7 +28,7 @@
+ extern "C" {
+ #endif /* __cplusplus */
+ 
+-#define PAGESIZE 0x10
++#define XPAGESIZE 0x10
+ #define FPMAXSIZE 0x20
+ 
+ #define OCEANIC_COMMON_MATCH(version,patterns,firmware) \
+@@ -62,7 +62,7 @@ typedef struct oceanic_common_layout_t {
+ typedef struct oceanic_common_device_t {
+ 	dc_device_t base;
+ 	unsigned int firmware;
+-	unsigned char version[PAGESIZE];
++	unsigned char version[XPAGESIZE];
+ 	unsigned char fingerprint[FPMAXSIZE];
+ 	const oceanic_common_layout_t *layout;
+ 	unsigned int multipage;
+@@ -75,7 +75,7 @@ typedef struct oceanic_common_device_vta
+ } oceanic_common_device_vtable_t;
+ 
+ typedef struct oceanic_common_version_t {
+-	unsigned char pattern[PAGESIZE + 1];
++	unsigned char pattern[XPAGESIZE + 1];
+ 	unsigned int firmware;
+ 	const oceanic_common_layout_t *layout;
+ } oceanic_common_version_t;
+--- a/src/oceanic_veo250.c
++++ b/src/oceanic_veo250.c
+@@ -384,24 +384,24 @@ oceanic_veo250_device_version (dc_device
+ 	if (!ISINSTANCE (abstract))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+-	if (size < PAGESIZE)
++	if (size < XPAGESIZE)
+ 		return DC_STATUS_INVALIDARGS;
+ 
+-	unsigned char answer[PAGESIZE + 2] = {0};
++	unsigned char answer[XPAGESIZE + 2] = {0};
+ 	unsigned char command[2] = {0x90, 0x00};
+ 	dc_status_t rc = oceanic_veo250_transfer (device, command, sizeof (command), answer, sizeof (answer));
+ 	if (rc != DC_STATUS_SUCCESS)
+ 		return rc;
+ 
+ 	// Verify the checksum of the answer.
+-	unsigned char crc = answer[PAGESIZE];
+-	unsigned char ccrc = checksum_add_uint8 (answer, PAGESIZE, 0x00);
++	unsigned char crc = answer[XPAGESIZE];
++	unsigned char ccrc = checksum_add_uint8 (answer, XPAGESIZE, 0x00);
+ 	if (crc != ccrc) {
+ 		ERROR (abstract->context, "Unexpected answer checksum.");
+ 		return DC_STATUS_PROTOCOL;
+ 	}
+ 
+-	memcpy (data, answer, PAGESIZE);
++	memcpy (data, answer, XPAGESIZE);
+ 
+ 	return DC_STATUS_SUCCESS;
+ }
+@@ -412,28 +412,28 @@ oceanic_veo250_device_read (dc_device_t
+ {
+ 	oceanic_veo250_device_t *device = (oceanic_veo250_device_t*) abstract;
+ 
+-	if ((address % PAGESIZE != 0) ||
+-		(size    % PAGESIZE != 0))
++	if ((address % XPAGESIZE != 0) ||
++		(size    % XPAGESIZE != 0))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	unsigned int nbytes = 0;
+ 	while (nbytes < size) {
+ 		// Calculate the number of packages.
+-		unsigned int npackets = (size - nbytes) / PAGESIZE;
++		unsigned int npackets = (size - nbytes) / XPAGESIZE;
+ 		if (npackets > MULTIPAGE)
+ 			npackets = MULTIPAGE;
+ 
+ 		// Read the package.
+-		unsigned int first =  address / PAGESIZE;
++		unsigned int first =  address / XPAGESIZE;
+ 		unsigned int last  = first + npackets - 1;
+-		unsigned char answer[(PAGESIZE + 1) * MULTIPAGE + 1] = {0};
++		unsigned char answer[(XPAGESIZE + 1) * MULTIPAGE + 1] = {0};
+ 		unsigned char command[6] = {0x20,
+ 				(first     ) & 0xFF, // low
+ 				(first >> 8) & 0xFF, // high
+ 				(last     ) & 0xFF, // low
+ 				(last >> 8) & 0xFF, // high
+ 				0};
+-		dc_status_t rc = oceanic_veo250_transfer (device, command, sizeof (command), answer, (PAGESIZE + 1) * npackets + 1);
++		dc_status_t rc = oceanic_veo250_transfer (device, command, sizeof (command), answer, (XPAGESIZE + 1) * npackets + 1);
+ 		if (rc != DC_STATUS_SUCCESS)
+ 			return rc;
+ 
+@@ -442,19 +442,19 @@ oceanic_veo250_device_read (dc_device_t
+ 		unsigned int offset = 0;
+ 		for (unsigned int i = 0; i < npackets; ++i) {
+ 			// Verify the checksum of the answer.
+-			unsigned char crc = answer[offset + PAGESIZE];
+-			unsigned char ccrc = checksum_add_uint8 (answer + offset, PAGESIZE, 0x00);
++			unsigned char crc = answer[offset + XPAGESIZE];
++			unsigned char ccrc = checksum_add_uint8 (answer + offset, XPAGESIZE, 0x00);
+ 			if (crc != ccrc) {
+ 				ERROR (abstract->context, "Unexpected answer checksum.");
+ 				return DC_STATUS_PROTOCOL;
+ 			}
+ 
+-			memcpy (data, answer + offset, PAGESIZE);
++			memcpy (data, answer + offset, XPAGESIZE);
+ 
+-			offset += PAGESIZE + 1;
+-			nbytes += PAGESIZE;
+-			address += PAGESIZE;
+-			data += PAGESIZE;
++			offset += XPAGESIZE + 1;
++			nbytes += XPAGESIZE;
++			address += XPAGESIZE;
++			data += XPAGESIZE;
+ 		}
+ 	}
+ 
+--- a/src/oceanic_veo250_parser.c
++++ b/src/oceanic_veo250_parser.c
+@@ -142,7 +142,7 @@ oceanic_veo250_parser_get_field (dc_pars
+ 	const unsigned char *data = abstract->data;
+ 	unsigned int size = abstract->size;
+ 
+-	if (size < 7 * PAGESIZE / 2)
++	if (size < 7 * XPAGESIZE / 2)
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	if (!parser->cached) {
+@@ -157,7 +157,7 @@ oceanic_veo250_parser_get_field (dc_pars
+ 		parser->maxdepth = statistics.maxdepth;
+ 	}
+ 
+-	unsigned int footer = size - PAGESIZE;
++	unsigned int footer = size - XPAGESIZE;
+ 
+ 	dc_gasmix_t *gasmix = (dc_gasmix_t *) value;
+ 
+@@ -196,7 +196,7 @@ oceanic_veo250_parser_samples_foreach (d
+ 	const unsigned char *data = abstract->data;
+ 	unsigned int size = abstract->size;
+ 
+-	if (size < 7 * PAGESIZE / 2)
++	if (size < 7 * XPAGESIZE / 2)
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	unsigned int time = 0;
+@@ -221,13 +221,13 @@ oceanic_veo250_parser_samples_foreach (d
+ 		break;
+ 	}
+ 
+-	unsigned int offset = 5 * PAGESIZE / 2;
+-	while (offset + PAGESIZE / 2 <= size - PAGESIZE) {
++	unsigned int offset = 5 * XPAGESIZE / 2;
++	while (offset + XPAGESIZE / 2 <= size - XPAGESIZE) {
+ 		dc_sample_value_t sample = {0};
+ 
+ 		// Ignore empty samples.
+-		if (array_isequal (data + offset, PAGESIZE / 2, 0x00)) {
+-			offset += PAGESIZE / 2;
++		if (array_isequal (data + offset, XPAGESIZE / 2, 0x00)) {
++			offset += XPAGESIZE / 2;
+ 			continue;
+ 		}
+ 
+@@ -238,7 +238,7 @@ oceanic_veo250_parser_samples_foreach (d
+ 
+ 		// Vendor specific data
+ 		sample.vendor.type = SAMPLE_VENDOR_OCEANIC_VEO250;
+-		sample.vendor.size = PAGESIZE / 2;
++		sample.vendor.size = XPAGESIZE / 2;
+ 		sample.vendor.data = data + offset;
+ 		if (callback) callback (DC_SAMPLE_VENDOR, sample, userdata);
+ 
+@@ -283,7 +283,7 @@ oceanic_veo250_parser_samples_foreach (d
+ 			if (callback) callback (DC_SAMPLE_DECO, sample, userdata);
+ 		}
+ 
+-		offset += PAGESIZE / 2;
++		offset += XPAGESIZE / 2;
+ 	}
+ 
+ 	return DC_STATUS_SUCCESS;
+--- a/src/oceanic_vtpro.c
++++ b/src/oceanic_vtpro.c
+@@ -296,7 +296,7 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 
+ 	assert (device != NULL);
+ 	assert (device->base.layout != NULL);
+-	assert (device->base.layout->rb_logbook_entry_size == PAGESIZE / 2);
++	assert (device->base.layout->rb_logbook_entry_size == XPAGESIZE / 2);
+ 	assert (device->base.layout->rb_logbook_begin == device->base.layout->rb_logbook_end);
+ 	assert (progress != NULL);
+ 
+@@ -307,7 +307,7 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 		return DC_STATUS_NOMEMORY;
+ 
+ 	// Read the pointer data.
+-	unsigned char pointers[PAGESIZE] = {0};
++	unsigned char pointers[XPAGESIZE] = {0};
+ 	rc = oceanic_vtpro_device_read (abstract, layout->cf_pointers, pointers, sizeof (pointers));
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to read the memory page.");
+@@ -318,12 +318,12 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 	unsigned int last = pointers[0x03];
+ 
+ 	// Update and emit a progress event.
+-	progress->current += PAGESIZE;
+-	progress->maximum += PAGESIZE + (last + 1) * PAGESIZE / 2;
++	progress->current += XPAGESIZE;
++	progress->maximum += XPAGESIZE + (last + 1) * XPAGESIZE / 2;
+ 	device_event_emit (abstract, DC_EVENT_PROGRESS, progress);
+ 
+ 	// Allocate memory for the logbook entries.
+-	if (!dc_buffer_reserve (logbook, (last + 1) * PAGESIZE / 2))
++	if (!dc_buffer_reserve (logbook, (last + 1) * XPAGESIZE / 2))
+ 		return DC_STATUS_NOMEMORY;
+ 
+ 	// Send the logbook index command.
+@@ -340,7 +340,7 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 	// Read the logbook index.
+ 	for (unsigned int i = 0; i < last + 1; ++i) {
+ 		// Receive the answer of the dive computer.
+-		unsigned char answer[PAGESIZE / 2 + 1] = {0};
++		unsigned char answer[XPAGESIZE / 2 + 1] = {0};
+ 		rc = dc_iostream_read (device->iostream, answer, sizeof(answer), NULL);
+ 		if (rc != DC_STATUS_SUCCESS) {
+ 			ERROR (abstract->context, "Failed to receive the answer.");
+@@ -348,28 +348,28 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 		}
+ 
+ 		// Verify the checksum of the answer.
+-		unsigned char crc = answer[PAGESIZE / 2];
+-		unsigned char ccrc = checksum_add_uint4 (answer, PAGESIZE / 2, 0x00);
++		unsigned char crc = answer[XPAGESIZE / 2];
++		unsigned char ccrc = checksum_add_uint4 (answer, XPAGESIZE / 2, 0x00);
+ 		if (crc != ccrc) {
+ 			ERROR (abstract->context, "Unexpected answer checksum.");
+ 			return DC_STATUS_PROTOCOL;
+ 		}
+ 
+ 		// Update and emit a progress event.
+-		progress->current += PAGESIZE / 2;
++		progress->current += XPAGESIZE / 2;
+ 		device_event_emit (abstract, DC_EVENT_PROGRESS, progress);
+ 
+ 		// Ignore uninitialized entries.
+-		if (array_isequal (answer, PAGESIZE / 2, 0xFF)) {
++		if (array_isequal (answer, XPAGESIZE / 2, 0xFF)) {
+ 			WARNING (abstract->context, "Uninitialized logbook entries detected!");
+ 			continue;
+ 		}
+ 
+ 		// Compare the fingerprint to identify previously downloaded entries.
+-		if (memcmp (answer, device->base.fingerprint, PAGESIZE / 2) == 0) {
++		if (memcmp (answer, device->base.fingerprint, XPAGESIZE / 2) == 0) {
+ 			dc_buffer_clear (logbook);
+ 		} else {
+-			dc_buffer_append (logbook, answer, PAGESIZE / 2);
++			dc_buffer_append (logbook, answer, XPAGESIZE / 2);
+ 		}
+ 	}
+ 
+@@ -560,7 +560,7 @@ oceanic_vtpro_device_version (dc_device_
+ 	if (!ISINSTANCE (abstract))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+-	if (size < PAGESIZE)
++	if (size < XPAGESIZE)
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	// Switch the device into download mode. The response is ignored here,
+@@ -568,14 +568,14 @@ oceanic_vtpro_device_version (dc_device_
+ 	// response of the first part of the other command in this function.
+ 
+ 	unsigned char cmd[2] = {0x88, 0x00};
+-	unsigned char ans[PAGESIZE / 2 + 1] = {0};
++	unsigned char ans[XPAGESIZE / 2 + 1] = {0};
+ 	dc_status_t rc = oceanic_vtpro_transfer (device, cmd, sizeof (cmd), ans, sizeof (ans));
+ 	if (rc != DC_STATUS_SUCCESS)
+ 		return rc;
+ 
+ 	// Verify the checksum of the answer.
+-	unsigned char crc = ans[PAGESIZE / 2];
+-	unsigned char ccrc = checksum_add_uint4 (ans, PAGESIZE / 2, 0x00);
++	unsigned char crc = ans[XPAGESIZE / 2];
++	unsigned char ccrc = checksum_add_uint4 (ans, XPAGESIZE / 2, 0x00);
+ 	if (crc != ccrc) {
+ 		ERROR (abstract->context, "Unexpected answer checksum.");
+ 		return DC_STATUS_PROTOCOL;
+@@ -586,31 +586,31 @@ oceanic_vtpro_device_version (dc_device_
+ 		// split over two packets, but we join both parts again.
+ 		for (unsigned int i = 0; i < 2; ++i) {
+ 			unsigned char command[4] = {0x72, 0x03, i * 0x10, 0x00};
+-			unsigned char answer[PAGESIZE / 2 + 2] = {0};
++			unsigned char answer[XPAGESIZE / 2 + 2] = {0};
+ 			rc = oceanic_vtpro_transfer (device, command, sizeof (command), answer, sizeof (answer));
+ 			if (rc != DC_STATUS_SUCCESS)
+ 				return rc;
+ 
+ 			// Verify the checksum of the answer.
+-			crc = answer[PAGESIZE / 2];
+-			ccrc = checksum_add_uint4 (answer, PAGESIZE / 2, 0x00);
++			crc = answer[XPAGESIZE / 2];
++			ccrc = checksum_add_uint4 (answer, XPAGESIZE / 2, 0x00);
+ 			if (crc != ccrc) {
+ 				ERROR (abstract->context, "Unexpected answer checksum.");
+ 				return DC_STATUS_PROTOCOL;
+ 			}
+ 
+ 			// Verify the last byte of the answer.
+-			if (answer[PAGESIZE / 2 + 1] != END) {
++			if (answer[XPAGESIZE / 2 + 1] != END) {
+ 				ERROR (abstract->context, "Unexpected answer byte.");
+ 				return DC_STATUS_PROTOCOL;
+ 			}
+ 
+ 			// Append the answer to the output buffer.
+-			memcpy (data + i * PAGESIZE / 2, answer, PAGESIZE / 2);
++			memcpy (data + i * XPAGESIZE / 2, answer, XPAGESIZE / 2);
+ 		}
+ 	} else {
+ 		// Return an empty device identification string.
+-		memset (data, 0x00, PAGESIZE);
++		memset (data, 0x00, XPAGESIZE);
+ 	}
+ 
+ 	return DC_STATUS_SUCCESS;
+@@ -622,47 +622,47 @@ oceanic_vtpro_device_read (dc_device_t *
+ {
+ 	oceanic_vtpro_device_t *device = (oceanic_vtpro_device_t*) abstract;
+ 
+-	if ((address % PAGESIZE != 0) ||
+-		(size    % PAGESIZE != 0))
++	if ((address % XPAGESIZE != 0) ||
++		(size    % XPAGESIZE != 0))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	unsigned int nbytes = 0;
+ 	while (nbytes < size) {
+ 		// Calculate the number of packages.
+-		unsigned int npackets = (size - nbytes) / PAGESIZE;
++		unsigned int npackets = (size - nbytes) / XPAGESIZE;
+ 		if (npackets > MULTIPAGE)
+ 			npackets = MULTIPAGE;
+ 
+ 		// Read the package.
+-		unsigned int first =  address / PAGESIZE;
++		unsigned int first =  address / XPAGESIZE;
+ 		unsigned int last  = first + npackets - 1;
+-		unsigned char answer[(PAGESIZE + 1) * MULTIPAGE] = {0};
++		unsigned char answer[(XPAGESIZE + 1) * MULTIPAGE] = {0};
+ 		unsigned char command[6] = {0x34,
+ 				(first >> 8) & 0xFF, // high
+ 				(first     ) & 0xFF, // low
+ 				(last >> 8) & 0xFF, // high
+ 				(last     ) & 0xFF, // low
+ 				0x00};
+-		dc_status_t rc = oceanic_vtpro_transfer (device, command, sizeof (command), answer, (PAGESIZE + 1) * npackets);
++		dc_status_t rc = oceanic_vtpro_transfer (device, command, sizeof (command), answer, (XPAGESIZE + 1) * npackets);
+ 		if (rc != DC_STATUS_SUCCESS)
+ 			return rc;
+ 
+ 		unsigned int offset = 0;
+ 		for (unsigned int i = 0; i < npackets; ++i) {
+ 			// Verify the checksum of the answer.
+-			unsigned char crc = answer[offset + PAGESIZE];
+-			unsigned char ccrc = checksum_add_uint8 (answer + offset, PAGESIZE, 0x00);
++			unsigned char crc = answer[offset + XPAGESIZE];
++			unsigned char ccrc = checksum_add_uint8 (answer + offset, XPAGESIZE, 0x00);
+ 			if (crc != ccrc) {
+ 				ERROR (abstract->context, "Unexpected answer checksum.");
+ 				return DC_STATUS_PROTOCOL;
+ 			}
+ 
+-			memcpy (data, answer + offset, PAGESIZE);
++			memcpy (data, answer + offset, XPAGESIZE);
+ 
+-			offset += PAGESIZE + 1;
+-			nbytes += PAGESIZE;
+-			address += PAGESIZE;
+-			data += PAGESIZE;
++			offset += XPAGESIZE + 1;
++			nbytes += XPAGESIZE;
++			address += XPAGESIZE;
++			data += XPAGESIZE;
+ 		}
+ 	}
+ 
+--- a/src/oceanic_vtpro_parser.c
++++ b/src/oceanic_vtpro_parser.c
+@@ -155,7 +155,7 @@ oceanic_vtpro_parser_get_field (dc_parse
+ 	const unsigned char *data = abstract->data;
+ 	unsigned int size = abstract->size;
+ 
+-	if (size < 7 * PAGESIZE / 2)
++	if (size < 7 * XPAGESIZE / 2)
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	if (!parser->cached) {
+@@ -170,7 +170,7 @@ oceanic_vtpro_parser_get_field (dc_parse
+ 		parser->maxdepth = statistics.maxdepth;
+ 	}
+ 
+-	unsigned int footer = size - PAGESIZE;
++	unsigned int footer = size - XPAGESIZE;
+ 
+ 	unsigned int oxygen = 0;
+ 	unsigned int maxdepth = 0;
+@@ -237,7 +237,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 	const unsigned char *data = abstract->data;
+ 	unsigned int size = abstract->size;
+ 
+-	if (size < 7 * PAGESIZE / 2)
++	if (size < 7 * XPAGESIZE / 2)
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	unsigned int time = 0;
+@@ -259,14 +259,14 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 	// Initialize the state for the timestamp processing.
+ 	unsigned int timestamp = 0, count = 0, i = 0;
+ 
+-	unsigned int offset = 5 * PAGESIZE / 2;
+-	while (offset + PAGESIZE / 2 <= size - PAGESIZE) {
++	unsigned int offset = 5 * XPAGESIZE / 2;
++	while (offset + XPAGESIZE / 2 <= size - XPAGESIZE) {
+ 		dc_sample_value_t sample = {0};
+ 
+ 		// Ignore empty samples.
+-		if (array_isequal (data + offset, PAGESIZE / 2, 0x00) ||
+-			array_isequal (data + offset, PAGESIZE / 2, 0xFF)) {
+-			offset += PAGESIZE / 2;
++		if (array_isequal (data + offset, XPAGESIZE / 2, 0x00) ||
++			array_isequal (data + offset, XPAGESIZE / 2, 0xFF)) {
++			offset += XPAGESIZE / 2;
+ 			continue;
+ 		}
+ 
+@@ -288,12 +288,12 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 				// With a depth based sample interval, the exact number
+ 				// of samples for a single timestamp needs to be counted.
+ 				count = 1;
+-				unsigned int idx = offset + PAGESIZE / 2 ;
+-				while (idx + PAGESIZE / 2 <= size - PAGESIZE) {
++				unsigned int idx = offset + XPAGESIZE / 2 ;
++				while (idx + XPAGESIZE / 2 <= size - XPAGESIZE) {
+ 					// Ignore empty samples.
+-					if (array_isequal (data + idx, PAGESIZE / 2, 0x00) ||
+-						array_isequal (data + idx, PAGESIZE / 2, 0xFF)) {
+-						idx += PAGESIZE / 2;
++					if (array_isequal (data + idx, XPAGESIZE / 2, 0x00) ||
++						array_isequal (data + idx, XPAGESIZE / 2, 0xFF)) {
++						idx += XPAGESIZE / 2;
+ 						continue;
+ 					}
+ 
+@@ -301,7 +301,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 					if (next != current)
+ 						break;
+ 
+-					idx += PAGESIZE / 2;
++					idx += XPAGESIZE / 2;
+ 					count++;
+ 				}
+ 			}
+@@ -317,7 +317,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 			}
+ 			if (i >= count) {
+ 				WARNING (abstract->context, "Unexpected sample with the same timestamp ignored.");
+-				offset += PAGESIZE / 2;
++				offset += XPAGESIZE / 2;
+ 				continue;
+ 			}
+ 		}
+@@ -335,7 +335,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 
+ 		// Vendor specific data
+ 		sample.vendor.type = SAMPLE_VENDOR_OCEANIC_VTPRO;
+-		sample.vendor.size = PAGESIZE / 2;
++		sample.vendor.size = XPAGESIZE / 2;
+ 		sample.vendor.data = data + offset;
+ 		if (callback) callback (DC_SAMPLE_VENDOR, sample, userdata);
+ 
+@@ -374,7 +374,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 			if (callback) callback (DC_SAMPLE_DECO, sample, userdata);
+ 		}
+ 
+-		offset += PAGESIZE / 2;
++		offset += XPAGESIZE / 2;
+ 	}
+ 
+ 	return DC_STATUS_SUCCESS;
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
index 30b595dfd170..e996984352c0 100644
--- a/srcpkgs/libdivecomputer-subsurface/template
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -5,13 +5,13 @@ revision=1
 wrksrc="libdivecomputer-subsurface-branch-${version}"
 build_style=gnu-configure
 hostmakedepends="libtool automake autoconf pkg-config"
+makedepends="libusb-devel libmtp-devel hidapi-devel libbluetooth-devel"
 short_desc="Subsurface version of libdivecomputer"
 maintainer="Alan Brown <adbrown@rocketmail.com>"
 license="LGPL-2.1-only"
 homepage="https://subsurface-divelog.org/"
 distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
 checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
-shlib_provides="libdivecomputer.so"
 
 pre_configure() {
 	autoreconf -fi

From a936797c55abf5f8781382b68a795ca0f842ab1a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 26 Nov 2021 11:19:50 +0700
Subject: [PATCH 6/6] fixup! New package: Subsurface-5.0.5

---
 .../patches/core-depends-generated-ui.patch           | 10 ++++++++++
 srcpkgs/Subsurface/patches/make-or-ninja.patch        | 11 +++++++++++
 srcpkgs/Subsurface/template                           |  6 +-----
 3 files changed, 22 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/Subsurface/patches/core-depends-generated-ui.patch
 create mode 100644 srcpkgs/Subsurface/patches/make-or-ninja.patch

diff --git a/srcpkgs/Subsurface/patches/core-depends-generated-ui.patch b/srcpkgs/Subsurface/patches/core-depends-generated-ui.patch
new file mode 100644
index 000000000000..f35aa99ef86e
--- /dev/null
+++ b/srcpkgs/Subsurface/patches/core-depends-generated-ui.patch
@@ -0,0 +1,10 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -414,6 +414,7 @@ elseif (SUBSURFACE_TARGET_EXECUTABLE MAT
+ 	add_dependencies(subsurface_interface subsurface_generated_ui)
+ 	add_dependencies(subsurface_profile subsurface_generated_ui)
+ 	add_dependencies(subsurface_models_desktop subsurface_generated_ui)
++	add_dependencies(subsurface_corelib subsurface_generated_ui)
+ 	add_dependencies(subsurface_generated_ui version)
+ elseif (SUBSURFACE_TARGET_EXECUTABLE MATCHES "DownloaderExecutable")
+ 	set(DOWNLOADER_APP
diff --git a/srcpkgs/Subsurface/patches/make-or-ninja.patch b/srcpkgs/Subsurface/patches/make-or-ninja.patch
new file mode 100644
index 000000000000..08f11a434b58
--- /dev/null
+++ b/srcpkgs/Subsurface/patches/make-or-ninja.patch
@@ -0,0 +1,11 @@
+--- a/cmake/Modules/RunOnBuildDir.cmake
++++ b/cmake/Modules/RunOnBuildDir.cmake
+@@ -25,7 +25,7 @@ if(NOT NO_DOCS)
+ 	add_custom_target(
+ 		documentation ALL
+ 		COMMAND
+-		${CMAKE_MAKE_PROGRAM} -C ${CMAKE_SOURCE_DIR}/Documentation OUT=${CMAKE_BINARY_DIR}/Documentation/ doc
++		make -C ${CMAKE_SOURCE_DIR}/Documentation OUT=${CMAKE_BINARY_DIR}/Documentation/ doc
+ 		DEPENDS documentationLink
+ 	)
+ endif()
diff --git a/srcpkgs/Subsurface/template b/srcpkgs/Subsurface/template
index 4bc80569aeeb..c93cdbe19ee5 100644
--- a/srcpkgs/Subsurface/template
+++ b/srcpkgs/Subsurface/template
@@ -4,9 +4,7 @@ version=5.0.5
 revision=1
 build_style=cmake
 configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
- -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF
- -DNO_PRINTING=OFF"
-make_cmd=make
+ -DBTSUPPORT=ON -DNO_USERMANUAL=OFF -DNO_PRINTING=OFF"
 hostmakedepends="pkg-config autoconf automake libtool qt5-devel"
 makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
  sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
@@ -20,5 +18,3 @@ license="GPL-2.0-only"
 homepage="https://subsurface-divelog.org/"
 distfiles="${homepage}/downloads/${pkgname}-${version}.tgz"
 checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
-
-export CMAKE_GENERATOR="Unix Makefiles"

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR REVIEW] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (26 preceding siblings ...)
  2021-11-26  4:28 ` [PR PATCH] [Updated] Subsurface sgn
@ 2021-11-26 12:56 ` adbrown101
  2021-11-26 13:08 ` [PR PATCH] [Updated] Subsurface adbrown101
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-26 12:56 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 272 bytes --]

New review comment by adbrown101 on void-packages repository

https://github.com/void-linux/void-packages/pull/34187#discussion_r757478152

Comment:
Because it is a fork of libdivecomputer even though this is not on void. I must admit I wasn't sure whether to add or not.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PR PATCH] [Updated] Subsurface
  2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
                   ` (27 preceding siblings ...)
  2021-11-26 12:56 ` [PR REVIEW] Subsurface adbrown101
@ 2021-11-26 13:08 ` adbrown101
  28 siblings, 0 replies; 30+ messages in thread
From: adbrown101 @ 2021-11-26 13:08 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1285 bytes --]

There is an updated pull request by adbrown101 against master on the void-packages repository

https://github.com/adbrown101/void-packages subsurface
https://github.com/void-linux/void-packages/pull/34187

Subsurface
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, x86_64, x86_64-musl, i686
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64, aarch64-musl
 
I have been using subsurface for some time and have used on x86_64 and x86_64-musl. Works well on void.


A patch file from https://github.com/void-linux/void-packages/pull/34187.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-subsurface-34187.patch --]
[-- Type: text/x-diff, Size: 44854 bytes --]

From 6d97f4adff12a37979116ec68d6eeb44f708bf55 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:22:14 +0000
Subject: [PATCH 1/6] New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 19 +++++++++++++++++++
 srcpkgs/qtlocation-plugin-googlemaps/update   |  2 ++
 2 files changed, 21 insertions(+)
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/template
 create mode 100644 srcpkgs/qtlocation-plugin-googlemaps/update

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
new file mode 100644
index 000000000000..754271e3c7da
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -0,0 +1,19 @@
+# Template file for 'qtlocation-plugin-googlemaps'
+pkgname=qtlocation-plugin-googlemaps
+_distpkgname=googlemaps
+version=0.0.0.2
+revision=1
+wrksrc=${_distpkgname}-v.${version}
+build_style=qmake
+hostmakedepends="qt5-qmake qt5-devel"
+makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
+short_desc="Googlemaps plugin for QtLocation"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="MIT"
+homepage="https://github.com/vladest/googlemaps"
+distfiles="https://github.com/vladest/${_distpkgname}/archive/v.${version}.tar.gz"
+checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
+
+post_install() {
+	vlicense LICENSE.txt
+}
diff --git a/srcpkgs/qtlocation-plugin-googlemaps/update b/srcpkgs/qtlocation-plugin-googlemaps/update
new file mode 100644
index 000000000000..7b68f9be62e3
--- /dev/null
+++ b/srcpkgs/qtlocation-plugin-googlemaps/update
@@ -0,0 +1,2 @@
+pkgname=googlemaps
+pattern="v\.\K[\d\.]+(?=\.tar\.gz)"

From 8419888b044803eb07545dbf47b08995651f7906 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:23:04 +0000
Subject: [PATCH 2/6] New package: libdivecomputer-subsurface-5.0.5

---
 srcpkgs/libdivecomputer-subsurface-devel    |  1 +
 srcpkgs/libdivecomputer-subsurface/template | 30 +++++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/update   |  2 ++
 3 files changed, 33 insertions(+)
 create mode 120000 srcpkgs/libdivecomputer-subsurface-devel
 create mode 100644 srcpkgs/libdivecomputer-subsurface/template
 create mode 100644 srcpkgs/libdivecomputer-subsurface/update

diff --git a/srcpkgs/libdivecomputer-subsurface-devel b/srcpkgs/libdivecomputer-subsurface-devel
new file mode 120000
index 000000000000..3500e0b5b0d5
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface-devel
@@ -0,0 +1 @@
+libdivecomputer-subsurface
\ No newline at end of file
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
new file mode 100644
index 000000000000..30b595dfd170
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -0,0 +1,30 @@
+# Template file for 'libdivecomputer-subsurface'
+pkgname=libdivecomputer-subsurface
+version=5.0.5
+revision=1
+wrksrc="libdivecomputer-subsurface-branch-${version}"
+build_style=gnu-configure
+hostmakedepends="libtool automake autoconf pkg-config"
+short_desc="Subsurface version of libdivecomputer"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="LGPL-2.1-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
+checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
+shlib_provides="libdivecomputer.so"
+
+pre_configure() {
+	autoreconf -fi
+}
+
+libdivecomputer-subsurface-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
+		vmove usr/share/man/man3
+	}
+}
diff --git a/srcpkgs/libdivecomputer-subsurface/update b/srcpkgs/libdivecomputer-subsurface/update
new file mode 100644
index 000000000000..61fff2459745
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/update
@@ -0,0 +1,2 @@
+site="${homepage}/downloads"
+pattern="${pkgname}-branch-\K[\d\.]+(?=\.tgz)"

From 2a4a98291b38ed1ca8040206a7c8a49b90ab3be2 Mon Sep 17 00:00:00 2001
From: Alan Brown <adbrown@rocketmail.com>
Date: Thu, 25 Nov 2021 18:23:39 +0000
Subject: [PATCH 3/6] New package: Subsurface-5.0.5

---
 srcpkgs/Subsurface/template | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 srcpkgs/Subsurface/template

diff --git a/srcpkgs/Subsurface/template b/srcpkgs/Subsurface/template
new file mode 100644
index 000000000000..4bc80569aeeb
--- /dev/null
+++ b/srcpkgs/Subsurface/template
@@ -0,0 +1,24 @@
+# Template file for 'Subsurface'
+pkgname=Subsurface
+version=5.0.5
+revision=1
+build_style=cmake
+configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
+ -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF
+ -DNO_PRINTING=OFF"
+make_cmd=make
+hostmakedepends="pkg-config autoconf automake libtool qt5-devel"
+makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
+ sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
+ libxslt-devel qt5-devel qt5-connectivity-devel qt5-declarative-devel
+ qt5-location-devel qt5-script-devel qt5-svg-devel qt5-tools-devel
+ qt5-webkit-devel bluez-qt5-devel libgit2-devel libzip-devel libmtp-devel"
+depends="libdivecomputer-subsurface qtlocation-plugin-googlemaps"
+short_desc="Multi-platform divelog software"
+maintainer="Alan Brown <adbrown@rocketmail.com>"
+license="GPL-2.0-only"
+homepage="https://subsurface-divelog.org/"
+distfiles="${homepage}/downloads/${pkgname}-${version}.tgz"
+checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
+
+export CMAKE_GENERATOR="Unix Makefiles"

From 00e160208fa27d411978986c39e88e1710c71adb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 26 Nov 2021 10:36:04 +0700
Subject: [PATCH 4/6] fixup! New package: qtlocation-plugin-googlemaps-0.0.0.2

---
 srcpkgs/qtlocation-plugin-googlemaps/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/qtlocation-plugin-googlemaps/template b/srcpkgs/qtlocation-plugin-googlemaps/template
index 754271e3c7da..ef301d542273 100644
--- a/srcpkgs/qtlocation-plugin-googlemaps/template
+++ b/srcpkgs/qtlocation-plugin-googlemaps/template
@@ -1,17 +1,16 @@
 # Template file for 'qtlocation-plugin-googlemaps'
 pkgname=qtlocation-plugin-googlemaps
-_distpkgname=googlemaps
 version=0.0.0.2
 revision=1
-wrksrc=${_distpkgname}-v.${version}
+wrksrc=googlemaps-v.${version}
 build_style=qmake
 hostmakedepends="qt5-qmake qt5-devel"
 makedepends="qt5-devel qt5-location-devel qt5-declarative-devel"
-short_desc="Googlemaps plugin for QtLocation"
+short_desc="Google Maps plugin for QtLocation"
 maintainer="Alan Brown <adbrown@rocketmail.com>"
 license="MIT"
 homepage="https://github.com/vladest/googlemaps"
-distfiles="https://github.com/vladest/${_distpkgname}/archive/v.${version}.tar.gz"
+distfiles="https://github.com/vladest/googlemaps/archive/v.${version}.tar.gz"
 checksum=aac2f995917e75dff2861ce38049ccbb1cd51d078cb45d78158caa40a97a5bf0
 
 post_install() {

From f99ed241fa3452a93e63ac19ea9aeea1475174c0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 26 Nov 2021 10:57:41 +0700
Subject: [PATCH 5/6] fixup! New package: libdivecomputer-subsurface-5.0.5

---
 .../patches/PAGESIZE.patch                    | 873 ++++++++++++++++++
 srcpkgs/libdivecomputer-subsurface/template   |   2 +-
 2 files changed, 874 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/libdivecomputer-subsurface/patches/PAGESIZE.patch

diff --git a/srcpkgs/libdivecomputer-subsurface/patches/PAGESIZE.patch b/srcpkgs/libdivecomputer-subsurface/patches/PAGESIZE.patch
new file mode 100644
index 000000000000..7ba54f118098
--- /dev/null
+++ b/srcpkgs/libdivecomputer-subsurface/patches/PAGESIZE.patch
@@ -0,0 +1,873 @@
+--- a/src/liquivision_lynx.c
++++ b/src/liquivision_lynx.c
+@@ -61,16 +61,16 @@
+ #define MAXRETRIES 2
+ #define MAXPACKET 12
+ #define SEGMENTSIZE 0x400
+-#define PAGESIZE    0x1000
++#define XPAGESIZE    0x1000
+ #define MEMSIZE     0x200000
+ 
+-#define RB_LOGBOOK_BEGIN         (1 * PAGESIZE)
+-#define RB_LOGBOOK_END           (25 * PAGESIZE)
++#define RB_LOGBOOK_BEGIN         (1 * XPAGESIZE)
++#define RB_LOGBOOK_END           (25 * XPAGESIZE)
+ #define RB_LOGBOOK_SIZE          (RB_LOGBOOK_END - RB_LOGBOOK_BEGIN)
+ #define RB_LOGBOOK_DISTANCE(a,b) ringbuffer_distance (a, b, 1, RB_LOGBOOK_BEGIN, RB_LOGBOOK_END)
+ 
+-#define RB_PROFILE_BEGIN         (25 * PAGESIZE)
+-#define RB_PROFILE_END           (500 * PAGESIZE)
++#define RB_PROFILE_BEGIN         (25 * XPAGESIZE)
++#define RB_PROFILE_END           (500 * XPAGESIZE)
+ #define RB_PROFILE_SIZE          (RB_PROFILE_END - RB_PROFILE_BEGIN)
+ #define RB_PROFILE_DISTANCE(a,b) ringbuffer_distance (a, b, 1, RB_PROFILE_BEGIN, RB_PROFILE_END)
+ 
+@@ -311,8 +311,8 @@ liquivision_lynx_device_read (dc_device_
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	// Get the page and segment number.
+-	unsigned int page    = (address / PAGESIZE);
+-	unsigned int segment = (address % PAGESIZE) / SEGMENTSIZE;
++	unsigned int page    = (address / XPAGESIZE);
++	unsigned int segment = (address % XPAGESIZE) / SEGMENTSIZE;
+ 
+ 	unsigned int nbytes = 0;
+ 	while (nbytes < size) {
+@@ -336,7 +336,7 @@ liquivision_lynx_device_read (dc_device_
+ 
+ 		nbytes += SEGMENTSIZE;
+ 		segment++;
+-		if (segment == (PAGESIZE / SEGMENTSIZE)) {
++		if (segment == (XPAGESIZE / SEGMENTSIZE)) {
+ 			segment = 0;
+ 			page++;
+ 		}
+@@ -410,13 +410,13 @@ liquivision_lynx_device_foreach (dc_devi
+ 	unsigned int headersize = (model == XEN) ? SZ_HEADER_XEN : SZ_HEADER_OTHER;
+ 
+ 	// Get the number of headers per page.
+-	unsigned int npages = PAGESIZE / headersize;
++	unsigned int npages = XPAGESIZE / headersize;
+ 
+ 	// Get the logbook pointers.
+ 	unsigned int begin = array_uint16_le (config + 0x46);
+ 	unsigned int end   = array_uint16_le (config + 0x48);
+-	unsigned int rb_logbook_begin = RB_LOGBOOK_BEGIN + (begin / npages) * PAGESIZE + (begin % npages) * headersize;
+-	unsigned int rb_logbook_end   = RB_LOGBOOK_BEGIN + (end   / npages) * PAGESIZE + (end   % npages) * headersize;
++	unsigned int rb_logbook_begin = RB_LOGBOOK_BEGIN + (begin / npages) * XPAGESIZE + (begin % npages) * headersize;
++	unsigned int rb_logbook_end   = RB_LOGBOOK_BEGIN + (end   / npages) * XPAGESIZE + (end   % npages) * headersize;
+ 	if (rb_logbook_begin < RB_LOGBOOK_BEGIN || rb_logbook_begin > RB_LOGBOOK_END ||
+ 		rb_logbook_end   < RB_LOGBOOK_BEGIN || rb_logbook_end   > RB_LOGBOOK_END) {
+ 		ERROR (abstract->context, "Invalid logbook pointers (%04x, %04x).",
+@@ -478,8 +478,8 @@ liquivision_lynx_device_foreach (dc_devi
+ 			address = RB_LOGBOOK_END;
+ 
+ 		// Skip the padding bytes.
+-		if ((address % PAGESIZE) == 0) {
+-			unsigned int padding = PAGESIZE % headersize;
++		if ((address % XPAGESIZE) == 0) {
++			unsigned int padding = XPAGESIZE % headersize;
+ 			unsigned char dummy[SZ_HEADER_MAX] = {0};
+ 			status = dc_rbstream_read (rblogbook, &progress, dummy, padding);
+ 			if (status != DC_STATUS_SUCCESS) {
+--- a/src/oceanic_atom2.c
++++ b/src/oceanic_atom2.c
+@@ -994,11 +994,11 @@ oceanic_atom2_device_version (dc_device_
+ 	if (!ISINSTANCE (abstract))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+-	if (size < PAGESIZE)
++	if (size < XPAGESIZE)
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	unsigned char command[] = {CMD_VERSION};
+-	dc_status_t rc = oceanic_atom2_transfer (device, command, sizeof (command), ACK, data, PAGESIZE, 1);
++	dc_status_t rc = oceanic_atom2_transfer (device, command, sizeof (command), ACK, data, XPAGESIZE, 1);
+ 	if (rc != DC_STATUS_SUCCESS)
+ 		return rc;
+ 
+@@ -1012,8 +1012,8 @@ oceanic_atom2_device_read (dc_device_t *
+ 	oceanic_atom2_device_t *device = (oceanic_atom2_device_t*) abstract;
+ 	const oceanic_common_layout_t *layout = device->base.layout;
+ 
+-	if ((address % PAGESIZE != 0) ||
+-		(size    % PAGESIZE != 0))
++	if ((address % XPAGESIZE != 0) ||
++		(size    % XPAGESIZE != 0))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	// Pick the correct read command and number of checksum bytes.
+@@ -1037,7 +1037,7 @@ oceanic_atom2_device_read (dc_device_t *
+ 	}
+ 
+ 	// Pick the best pagesize to use.
+-	unsigned int pagesize = device->bigpage * PAGESIZE;
++	unsigned int pagesize = device->bigpage * XPAGESIZE;
+ 
+ 	// High memory state.
+ 	unsigned int highmem = 0;
+@@ -1049,7 +1049,7 @@ oceanic_atom2_device_read (dc_device_t *
+ 			highmem = layout->highmem;
+ 			read_cmd = CMD_READ16HI;
+ 			crc_size = 2;
+-			pagesize = 16 * PAGESIZE;
++			pagesize = 16 * XPAGESIZE;
+ 		}
+ 
+ 		// Calculate the page number after mapping the virtual high memory
+@@ -1058,7 +1058,7 @@ oceanic_atom2_device_read (dc_device_t *
+ 
+ 		if (page != device->cached_page || highmem != device->cached_highmem) {
+ 			// Read the package.
+-			unsigned int number = highmem ? page : page * device->bigpage; // This is always PAGESIZE, even in big page mode.
++			unsigned int number = highmem ? page : page * device->bigpage; // This is always XPAGESIZE, even in big page mode.
+ 			unsigned char command[] = {read_cmd,
+ 					(number >> 8) & 0xFF, // high
+ 					(number     ) & 0xFF, // low
+@@ -1093,8 +1093,8 @@ oceanic_atom2_device_write (dc_device_t
+ {
+ 	oceanic_atom2_device_t *device = (oceanic_atom2_device_t*) abstract;
+ 
+-	if ((address % PAGESIZE != 0) ||
+-		(size    % PAGESIZE != 0))
++	if ((address % XPAGESIZE != 0) ||
++		(size    % XPAGESIZE != 0))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	// Invalidate the cache.
+@@ -1104,7 +1104,7 @@ oceanic_atom2_device_write (dc_device_t
+ 	unsigned int nbytes = 0;
+ 	while (nbytes < size) {
+ 		// Prepare to write the package.
+-		unsigned int number = address / PAGESIZE;
++		unsigned int number = address / XPAGESIZE;
+ 		unsigned char prepare[] = {CMD_WRITE,
+ 				(number >> 8) & 0xFF, // high
+ 				(number     ) & 0xFF, // low
+@@ -1114,16 +1114,16 @@ oceanic_atom2_device_write (dc_device_t
+ 			return rc;
+ 
+ 		// Write the package.
+-		unsigned char command[PAGESIZE + 1] = {0};
+-		memcpy (command, data, PAGESIZE);
+-		command[PAGESIZE] = checksum_add_uint8 (command, PAGESIZE, 0x00);
++		unsigned char command[XPAGESIZE + 1] = {0};
++		memcpy (command, data, XPAGESIZE);
++		command[XPAGESIZE] = checksum_add_uint8 (command, XPAGESIZE, 0x00);
+ 		rc = oceanic_atom2_transfer (device, command, sizeof (command), ACK, NULL, 0, 0);
+ 		if (rc != DC_STATUS_SUCCESS)
+ 			return rc;
+ 
+-		nbytes += PAGESIZE;
+-		address += PAGESIZE;
+-		data += PAGESIZE;
++		nbytes += XPAGESIZE;
++		address += XPAGESIZE;
++		data += XPAGESIZE;
+ 	}
+ 
+ 	return DC_STATUS_SUCCESS;
+--- a/src/oceanic_atom2_parser.c
++++ b/src/oceanic_atom2_parser.c
+@@ -165,8 +165,8 @@ oceanic_atom2_parser_create (dc_parser_t
+ 
+ 	// Set the default values.
+ 	parser->model = model;
+-	parser->headersize = 9 * PAGESIZE / 2;
+-	parser->footersize = 2 * PAGESIZE / 2;
++	parser->headersize = 9 * XPAGESIZE / 2;
++	parser->footersize = 2 * XPAGESIZE / 2;
+ 	if (model == DATAMASK || model == COMPUMASK ||
+ 		model == GEO || model == GEO20 ||
+ 		model == VEO20 || model == VEO30 ||
+@@ -177,30 +177,30 @@ oceanic_atom2_parser_create (dc_parser_t
+ 		model == I200 || model == I200C ||
+ 		model == I300C || model == GEO40 ||
+ 		model == VEO40 || model == I470TC) {
+-		parser->headersize -= PAGESIZE;
++		parser->headersize -= XPAGESIZE;
+ 	} else if (model == VT4 || model == VT41) {
+-		parser->headersize += PAGESIZE;
++		parser->headersize += XPAGESIZE;
+ 	} else if (model == TX1) {
+-		parser->headersize += 2 * PAGESIZE;
++		parser->headersize += 2 * XPAGESIZE;
+ 	} else if (model == ATOM1 || model == I100 ||
+ 		model == PROPLUS4) {
+-		parser->headersize -= 2 * PAGESIZE;
++		parser->headersize -= 2 * XPAGESIZE;
+ 	} else if (model == F10A || model == F10B ||
+ 		model == MUNDIAL2 || model == MUNDIAL3) {
+-		parser->headersize = 3 * PAGESIZE;
++		parser->headersize = 3 * XPAGESIZE;
+ 		parser->footersize = 0;
+ 	} else if (model == F11A || model == F11B) {
+-		parser->headersize = 5 * PAGESIZE;
++		parser->headersize = 5 * XPAGESIZE;
+ 		parser->footersize = 0;
+ 	} else if (model == A300CS || model == VTX ||
+ 		model == I450T || model == I750TC ||
+ 		model == I770R || model == SAGE ||
+ 		model == BEACON) {
+-		parser->headersize = 5 * PAGESIZE;
++		parser->headersize = 5 * XPAGESIZE;
+ 	} else if (model == PROPLUSX) {
+-		parser->headersize = 3 * PAGESIZE;
++		parser->headersize = 3 * XPAGESIZE;
+ 	} else if (model == I550C || model == WISDOM4) {
+-		parser->headersize = 5 * PAGESIZE / 2;
++		parser->headersize = 5 * XPAGESIZE / 2;
+ 	}
+ 
+ 	parser->serial = serial;
+@@ -428,12 +428,12 @@ oceanic_atom2_parser_cache (oceanic_atom
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	// Get the offset to the header and footer sample.
+-	unsigned int header = headersize - PAGESIZE / 2;
++	unsigned int header = headersize - XPAGESIZE / 2;
+ 	unsigned int footer = size - footersize;
+ 	if (parser->model == VT4 || parser->model == VT41 ||
+ 		parser->model == A300AI || parser->model == VISION ||
+ 		parser->model == XPAIR) {
+-		header = 3 * PAGESIZE;
++		header = 3 * XPAGESIZE;
+ 	}
+ 
+ 	// Get the dive mode.
+@@ -660,7 +660,7 @@ oceanic_atom2_parser_vendor (oceanic_ato
+ 		// Get the sample size.
+ 		unsigned int length = samplesize;
+ 		if (sampletype == 0xBB) {
+-			length = PAGESIZE;
++			length = XPAGESIZE;
+ 		}
+ 
+ 		// Vendor specific data
+@@ -738,7 +738,7 @@ oceanic_atom2_parser_samples_foreach (dc
+ 		}
+ 	}
+ 
+-	unsigned int samplesize = PAGESIZE / 2;
++	unsigned int samplesize = XPAGESIZE / 2;
+ 	if (parser->mode == FREEDIVE) {
+ 		if (parser->model == F10A || parser->model == F10B ||
+ 			parser->model == F11A || parser->model == F11B ||
+@@ -754,7 +754,7 @@ oceanic_atom2_parser_samples_foreach (dc
+ 		parser->model == I750TC || parser->model == PROPLUSX ||
+ 		parser->model == I770R || parser->model == I470TC ||
+ 		parser->model == SAGE || parser->model == BEACON) {
+-		samplesize = PAGESIZE;
++		samplesize = XPAGESIZE;
+ 	}
+ 
+ 	unsigned int have_temperature = 1, have_pressure = 1;
+@@ -824,7 +824,7 @@ oceanic_atom2_parser_samples_foreach (dc
+ 		// larger size. Check whether we have that many bytes available.
+ 		unsigned int length = samplesize;
+ 		if (sampletype == 0xBB) {
+-			length = PAGESIZE;
++			length = XPAGESIZE;
+ 			if (offset + length > size - parser->footersize) {
+ 				ERROR (abstract->context, "Buffer overflow detected!");
+ 				return DC_STATUS_DATAFORMAT;
+--- a/src/oceanic_common.c
++++ b/src/oceanic_common.c
+@@ -104,7 +104,7 @@ oceanic_common_match_pattern (const unsi
+ 	unsigned int value = 0;
+ 	unsigned int count = 0;
+ 
+-	for (unsigned int i = 0; i < PAGESIZE; ++i, ++pattern, ++string) {
++	for (unsigned int i = 0; i < XPAGESIZE; ++i, ++pattern, ++string) {
+ 		if (*pattern != '\0') {
+ 			// Compare the pattern.
+ 			if (*pattern != *string)
+@@ -206,7 +206,7 @@ oceanic_common_device_dump (dc_device_t
+ 	device_event_emit (abstract, DC_EVENT_VENDOR, &vendor);
+ 
+ 	return device_dump_read (abstract, dc_buffer_get_data (buffer),
+-		dc_buffer_get_size (buffer), PAGESIZE * device->multipage);
++		dc_buffer_get_size (buffer), XPAGESIZE * device->multipage);
+ }
+ 
+ 
+@@ -235,7 +235,7 @@ oceanic_common_device_logbook (dc_device
+ 	}
+ 
+ 	// Read the pointer data.
+-	unsigned char pointers[PAGESIZE] = {0};
++	unsigned char pointers[XPAGESIZE] = {0};
+ 	rc = dc_device_read (abstract, layout->cf_pointers, pointers, sizeof (pointers));
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to read the memory page.");
+@@ -279,8 +279,8 @@ oceanic_common_device_logbook (dc_device
+ 	}
+ 
+ 	// Update and emit a progress event.
+-	progress->current += PAGESIZE;
+-	progress->maximum += PAGESIZE;
++	progress->current += XPAGESIZE;
++	progress->maximum += XPAGESIZE;
+ 	progress->maximum -= (layout->rb_logbook_end - layout->rb_logbook_begin) - rb_logbook_size;
+ 	device_event_emit (abstract, DC_EVENT_PROGRESS, progress);
+ 
+@@ -298,7 +298,7 @@ oceanic_common_device_logbook (dc_device
+ 
+ 	// Create the ringbuffer stream.
+ 	dc_rbstream_t *rbstream = NULL;
+-	rc = dc_rbstream_new (&rbstream, abstract, PAGESIZE, PAGESIZE * device->multipage, layout->rb_logbook_begin, layout->rb_logbook_end, rb_logbook_end);
++	rc = dc_rbstream_new (&rbstream, abstract, XPAGESIZE, XPAGESIZE * device->multipage, layout->rb_logbook_begin, layout->rb_logbook_end, rb_logbook_end);
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to create the ringbuffer stream.");
+ 		return rc;
+@@ -375,7 +375,7 @@ oceanic_common_device_profile (dc_device
+ 	const oceanic_common_layout_t *layout = device->layout;
+ 
+ 	// Get the pagesize
+-	unsigned int pagesize = layout->highmem ? 16 * PAGESIZE : PAGESIZE;
++	unsigned int pagesize = layout->highmem ? 16 * XPAGESIZE : XPAGESIZE;
+ 
+ 	// Cache the logbook pointer and size.
+ 	const unsigned char *logbooks = dc_buffer_get_data (logbook);
+@@ -460,7 +460,7 @@ oceanic_common_device_profile (dc_device
+ 
+ 	// Create the ringbuffer stream.
+ 	dc_rbstream_t *rbstream = NULL;
+-	rc = dc_rbstream_new (&rbstream, abstract, PAGESIZE, PAGESIZE * device->multipage, layout->rb_profile_begin, layout->rb_profile_end, rb_profile_end);
++	rc = dc_rbstream_new (&rbstream, abstract, XPAGESIZE, XPAGESIZE * device->multipage, layout->rb_profile_begin, layout->rb_profile_end, rb_profile_end);
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to create the ringbuffer stream.");
+ 		return rc;
+@@ -553,7 +553,7 @@ oceanic_common_device_profile (dc_device
+ 			unsigned int value_hi = value & 0xE000;
+ 			unsigned int value_lo = value & 0x0FFF;
+ 			unsigned int npages = ((value_hi >> 1) | value_lo) + 1;
+-			unsigned int length = npages * PAGESIZE;
++			unsigned int length = npages * XPAGESIZE;
+ 			if (rb_entry_size > length) {
+ 				rb_entry_size = length;
+ 			}
+@@ -584,7 +584,7 @@ oceanic_common_device_foreach (dc_device
+ 
+ 	// Enable progress notifications.
+ 	dc_event_progress_t progress = EVENT_PROGRESS_INITIALIZER;
+-	progress.maximum = PAGESIZE +
++	progress.maximum = XPAGESIZE +
+ 		(layout->rb_logbook_end - layout->rb_logbook_begin) +
+ 		(layout->rb_profile_end - layout->rb_profile_begin);
+ 	device_event_emit (abstract, DC_EVENT_PROGRESS, &progress);
+@@ -596,7 +596,7 @@ oceanic_common_device_foreach (dc_device
+ 	device_event_emit (abstract, DC_EVENT_VENDOR, &vendor);
+ 
+ 	// Read the device id.
+-	unsigned char id[PAGESIZE] = {0};
++	unsigned char id[XPAGESIZE] = {0};
+ 	dc_status_t rc = dc_device_read (abstract, layout->cf_devinfo, id, sizeof (id));
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to read the memory page.");
+@@ -604,7 +604,7 @@ oceanic_common_device_foreach (dc_device
+ 	}
+ 
+ 	// Update and emit a progress event.
+-	progress.current += PAGESIZE;
++	progress.current += XPAGESIZE;
+ 	device_event_emit (abstract, DC_EVENT_PROGRESS, &progress);
+ 
+ 	// Emit a device info event.
+--- a/src/oceanic_common.h
++++ b/src/oceanic_common.h
+@@ -28,7 +28,7 @@
+ extern "C" {
+ #endif /* __cplusplus */
+ 
+-#define PAGESIZE 0x10
++#define XPAGESIZE 0x10
+ #define FPMAXSIZE 0x20
+ 
+ #define OCEANIC_COMMON_MATCH(version,patterns,firmware) \
+@@ -62,7 +62,7 @@ typedef struct oceanic_common_layout_t {
+ typedef struct oceanic_common_device_t {
+ 	dc_device_t base;
+ 	unsigned int firmware;
+-	unsigned char version[PAGESIZE];
++	unsigned char version[XPAGESIZE];
+ 	unsigned char fingerprint[FPMAXSIZE];
+ 	const oceanic_common_layout_t *layout;
+ 	unsigned int multipage;
+@@ -75,7 +75,7 @@ typedef struct oceanic_common_device_vta
+ } oceanic_common_device_vtable_t;
+ 
+ typedef struct oceanic_common_version_t {
+-	unsigned char pattern[PAGESIZE + 1];
++	unsigned char pattern[XPAGESIZE + 1];
+ 	unsigned int firmware;
+ 	const oceanic_common_layout_t *layout;
+ } oceanic_common_version_t;
+--- a/src/oceanic_veo250.c
++++ b/src/oceanic_veo250.c
+@@ -384,24 +384,24 @@ oceanic_veo250_device_version (dc_device
+ 	if (!ISINSTANCE (abstract))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+-	if (size < PAGESIZE)
++	if (size < XPAGESIZE)
+ 		return DC_STATUS_INVALIDARGS;
+ 
+-	unsigned char answer[PAGESIZE + 2] = {0};
++	unsigned char answer[XPAGESIZE + 2] = {0};
+ 	unsigned char command[2] = {0x90, 0x00};
+ 	dc_status_t rc = oceanic_veo250_transfer (device, command, sizeof (command), answer, sizeof (answer));
+ 	if (rc != DC_STATUS_SUCCESS)
+ 		return rc;
+ 
+ 	// Verify the checksum of the answer.
+-	unsigned char crc = answer[PAGESIZE];
+-	unsigned char ccrc = checksum_add_uint8 (answer, PAGESIZE, 0x00);
++	unsigned char crc = answer[XPAGESIZE];
++	unsigned char ccrc = checksum_add_uint8 (answer, XPAGESIZE, 0x00);
+ 	if (crc != ccrc) {
+ 		ERROR (abstract->context, "Unexpected answer checksum.");
+ 		return DC_STATUS_PROTOCOL;
+ 	}
+ 
+-	memcpy (data, answer, PAGESIZE);
++	memcpy (data, answer, XPAGESIZE);
+ 
+ 	return DC_STATUS_SUCCESS;
+ }
+@@ -412,28 +412,28 @@ oceanic_veo250_device_read (dc_device_t
+ {
+ 	oceanic_veo250_device_t *device = (oceanic_veo250_device_t*) abstract;
+ 
+-	if ((address % PAGESIZE != 0) ||
+-		(size    % PAGESIZE != 0))
++	if ((address % XPAGESIZE != 0) ||
++		(size    % XPAGESIZE != 0))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	unsigned int nbytes = 0;
+ 	while (nbytes < size) {
+ 		// Calculate the number of packages.
+-		unsigned int npackets = (size - nbytes) / PAGESIZE;
++		unsigned int npackets = (size - nbytes) / XPAGESIZE;
+ 		if (npackets > MULTIPAGE)
+ 			npackets = MULTIPAGE;
+ 
+ 		// Read the package.
+-		unsigned int first =  address / PAGESIZE;
++		unsigned int first =  address / XPAGESIZE;
+ 		unsigned int last  = first + npackets - 1;
+-		unsigned char answer[(PAGESIZE + 1) * MULTIPAGE + 1] = {0};
++		unsigned char answer[(XPAGESIZE + 1) * MULTIPAGE + 1] = {0};
+ 		unsigned char command[6] = {0x20,
+ 				(first     ) & 0xFF, // low
+ 				(first >> 8) & 0xFF, // high
+ 				(last     ) & 0xFF, // low
+ 				(last >> 8) & 0xFF, // high
+ 				0};
+-		dc_status_t rc = oceanic_veo250_transfer (device, command, sizeof (command), answer, (PAGESIZE + 1) * npackets + 1);
++		dc_status_t rc = oceanic_veo250_transfer (device, command, sizeof (command), answer, (XPAGESIZE + 1) * npackets + 1);
+ 		if (rc != DC_STATUS_SUCCESS)
+ 			return rc;
+ 
+@@ -442,19 +442,19 @@ oceanic_veo250_device_read (dc_device_t
+ 		unsigned int offset = 0;
+ 		for (unsigned int i = 0; i < npackets; ++i) {
+ 			// Verify the checksum of the answer.
+-			unsigned char crc = answer[offset + PAGESIZE];
+-			unsigned char ccrc = checksum_add_uint8 (answer + offset, PAGESIZE, 0x00);
++			unsigned char crc = answer[offset + XPAGESIZE];
++			unsigned char ccrc = checksum_add_uint8 (answer + offset, XPAGESIZE, 0x00);
+ 			if (crc != ccrc) {
+ 				ERROR (abstract->context, "Unexpected answer checksum.");
+ 				return DC_STATUS_PROTOCOL;
+ 			}
+ 
+-			memcpy (data, answer + offset, PAGESIZE);
++			memcpy (data, answer + offset, XPAGESIZE);
+ 
+-			offset += PAGESIZE + 1;
+-			nbytes += PAGESIZE;
+-			address += PAGESIZE;
+-			data += PAGESIZE;
++			offset += XPAGESIZE + 1;
++			nbytes += XPAGESIZE;
++			address += XPAGESIZE;
++			data += XPAGESIZE;
+ 		}
+ 	}
+ 
+--- a/src/oceanic_veo250_parser.c
++++ b/src/oceanic_veo250_parser.c
+@@ -142,7 +142,7 @@ oceanic_veo250_parser_get_field (dc_pars
+ 	const unsigned char *data = abstract->data;
+ 	unsigned int size = abstract->size;
+ 
+-	if (size < 7 * PAGESIZE / 2)
++	if (size < 7 * XPAGESIZE / 2)
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	if (!parser->cached) {
+@@ -157,7 +157,7 @@ oceanic_veo250_parser_get_field (dc_pars
+ 		parser->maxdepth = statistics.maxdepth;
+ 	}
+ 
+-	unsigned int footer = size - PAGESIZE;
++	unsigned int footer = size - XPAGESIZE;
+ 
+ 	dc_gasmix_t *gasmix = (dc_gasmix_t *) value;
+ 
+@@ -196,7 +196,7 @@ oceanic_veo250_parser_samples_foreach (d
+ 	const unsigned char *data = abstract->data;
+ 	unsigned int size = abstract->size;
+ 
+-	if (size < 7 * PAGESIZE / 2)
++	if (size < 7 * XPAGESIZE / 2)
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	unsigned int time = 0;
+@@ -221,13 +221,13 @@ oceanic_veo250_parser_samples_foreach (d
+ 		break;
+ 	}
+ 
+-	unsigned int offset = 5 * PAGESIZE / 2;
+-	while (offset + PAGESIZE / 2 <= size - PAGESIZE) {
++	unsigned int offset = 5 * XPAGESIZE / 2;
++	while (offset + XPAGESIZE / 2 <= size - XPAGESIZE) {
+ 		dc_sample_value_t sample = {0};
+ 
+ 		// Ignore empty samples.
+-		if (array_isequal (data + offset, PAGESIZE / 2, 0x00)) {
+-			offset += PAGESIZE / 2;
++		if (array_isequal (data + offset, XPAGESIZE / 2, 0x00)) {
++			offset += XPAGESIZE / 2;
+ 			continue;
+ 		}
+ 
+@@ -238,7 +238,7 @@ oceanic_veo250_parser_samples_foreach (d
+ 
+ 		// Vendor specific data
+ 		sample.vendor.type = SAMPLE_VENDOR_OCEANIC_VEO250;
+-		sample.vendor.size = PAGESIZE / 2;
++		sample.vendor.size = XPAGESIZE / 2;
+ 		sample.vendor.data = data + offset;
+ 		if (callback) callback (DC_SAMPLE_VENDOR, sample, userdata);
+ 
+@@ -283,7 +283,7 @@ oceanic_veo250_parser_samples_foreach (d
+ 			if (callback) callback (DC_SAMPLE_DECO, sample, userdata);
+ 		}
+ 
+-		offset += PAGESIZE / 2;
++		offset += XPAGESIZE / 2;
+ 	}
+ 
+ 	return DC_STATUS_SUCCESS;
+--- a/src/oceanic_vtpro.c
++++ b/src/oceanic_vtpro.c
+@@ -296,7 +296,7 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 
+ 	assert (device != NULL);
+ 	assert (device->base.layout != NULL);
+-	assert (device->base.layout->rb_logbook_entry_size == PAGESIZE / 2);
++	assert (device->base.layout->rb_logbook_entry_size == XPAGESIZE / 2);
+ 	assert (device->base.layout->rb_logbook_begin == device->base.layout->rb_logbook_end);
+ 	assert (progress != NULL);
+ 
+@@ -307,7 +307,7 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 		return DC_STATUS_NOMEMORY;
+ 
+ 	// Read the pointer data.
+-	unsigned char pointers[PAGESIZE] = {0};
++	unsigned char pointers[XPAGESIZE] = {0};
+ 	rc = oceanic_vtpro_device_read (abstract, layout->cf_pointers, pointers, sizeof (pointers));
+ 	if (rc != DC_STATUS_SUCCESS) {
+ 		ERROR (abstract->context, "Failed to read the memory page.");
+@@ -318,12 +318,12 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 	unsigned int last = pointers[0x03];
+ 
+ 	// Update and emit a progress event.
+-	progress->current += PAGESIZE;
+-	progress->maximum += PAGESIZE + (last + 1) * PAGESIZE / 2;
++	progress->current += XPAGESIZE;
++	progress->maximum += XPAGESIZE + (last + 1) * XPAGESIZE / 2;
+ 	device_event_emit (abstract, DC_EVENT_PROGRESS, progress);
+ 
+ 	// Allocate memory for the logbook entries.
+-	if (!dc_buffer_reserve (logbook, (last + 1) * PAGESIZE / 2))
++	if (!dc_buffer_reserve (logbook, (last + 1) * XPAGESIZE / 2))
+ 		return DC_STATUS_NOMEMORY;
+ 
+ 	// Send the logbook index command.
+@@ -340,7 +340,7 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 	// Read the logbook index.
+ 	for (unsigned int i = 0; i < last + 1; ++i) {
+ 		// Receive the answer of the dive computer.
+-		unsigned char answer[PAGESIZE / 2 + 1] = {0};
++		unsigned char answer[XPAGESIZE / 2 + 1] = {0};
+ 		rc = dc_iostream_read (device->iostream, answer, sizeof(answer), NULL);
+ 		if (rc != DC_STATUS_SUCCESS) {
+ 			ERROR (abstract->context, "Failed to receive the answer.");
+@@ -348,28 +348,28 @@ oceanic_aeris500ai_device_logbook (dc_de
+ 		}
+ 
+ 		// Verify the checksum of the answer.
+-		unsigned char crc = answer[PAGESIZE / 2];
+-		unsigned char ccrc = checksum_add_uint4 (answer, PAGESIZE / 2, 0x00);
++		unsigned char crc = answer[XPAGESIZE / 2];
++		unsigned char ccrc = checksum_add_uint4 (answer, XPAGESIZE / 2, 0x00);
+ 		if (crc != ccrc) {
+ 			ERROR (abstract->context, "Unexpected answer checksum.");
+ 			return DC_STATUS_PROTOCOL;
+ 		}
+ 
+ 		// Update and emit a progress event.
+-		progress->current += PAGESIZE / 2;
++		progress->current += XPAGESIZE / 2;
+ 		device_event_emit (abstract, DC_EVENT_PROGRESS, progress);
+ 
+ 		// Ignore uninitialized entries.
+-		if (array_isequal (answer, PAGESIZE / 2, 0xFF)) {
++		if (array_isequal (answer, XPAGESIZE / 2, 0xFF)) {
+ 			WARNING (abstract->context, "Uninitialized logbook entries detected!");
+ 			continue;
+ 		}
+ 
+ 		// Compare the fingerprint to identify previously downloaded entries.
+-		if (memcmp (answer, device->base.fingerprint, PAGESIZE / 2) == 0) {
++		if (memcmp (answer, device->base.fingerprint, XPAGESIZE / 2) == 0) {
+ 			dc_buffer_clear (logbook);
+ 		} else {
+-			dc_buffer_append (logbook, answer, PAGESIZE / 2);
++			dc_buffer_append (logbook, answer, XPAGESIZE / 2);
+ 		}
+ 	}
+ 
+@@ -560,7 +560,7 @@ oceanic_vtpro_device_version (dc_device_
+ 	if (!ISINSTANCE (abstract))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+-	if (size < PAGESIZE)
++	if (size < XPAGESIZE)
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	// Switch the device into download mode. The response is ignored here,
+@@ -568,14 +568,14 @@ oceanic_vtpro_device_version (dc_device_
+ 	// response of the first part of the other command in this function.
+ 
+ 	unsigned char cmd[2] = {0x88, 0x00};
+-	unsigned char ans[PAGESIZE / 2 + 1] = {0};
++	unsigned char ans[XPAGESIZE / 2 + 1] = {0};
+ 	dc_status_t rc = oceanic_vtpro_transfer (device, cmd, sizeof (cmd), ans, sizeof (ans));
+ 	if (rc != DC_STATUS_SUCCESS)
+ 		return rc;
+ 
+ 	// Verify the checksum of the answer.
+-	unsigned char crc = ans[PAGESIZE / 2];
+-	unsigned char ccrc = checksum_add_uint4 (ans, PAGESIZE / 2, 0x00);
++	unsigned char crc = ans[XPAGESIZE / 2];
++	unsigned char ccrc = checksum_add_uint4 (ans, XPAGESIZE / 2, 0x00);
+ 	if (crc != ccrc) {
+ 		ERROR (abstract->context, "Unexpected answer checksum.");
+ 		return DC_STATUS_PROTOCOL;
+@@ -586,31 +586,31 @@ oceanic_vtpro_device_version (dc_device_
+ 		// split over two packets, but we join both parts again.
+ 		for (unsigned int i = 0; i < 2; ++i) {
+ 			unsigned char command[4] = {0x72, 0x03, i * 0x10, 0x00};
+-			unsigned char answer[PAGESIZE / 2 + 2] = {0};
++			unsigned char answer[XPAGESIZE / 2 + 2] = {0};
+ 			rc = oceanic_vtpro_transfer (device, command, sizeof (command), answer, sizeof (answer));
+ 			if (rc != DC_STATUS_SUCCESS)
+ 				return rc;
+ 
+ 			// Verify the checksum of the answer.
+-			crc = answer[PAGESIZE / 2];
+-			ccrc = checksum_add_uint4 (answer, PAGESIZE / 2, 0x00);
++			crc = answer[XPAGESIZE / 2];
++			ccrc = checksum_add_uint4 (answer, XPAGESIZE / 2, 0x00);
+ 			if (crc != ccrc) {
+ 				ERROR (abstract->context, "Unexpected answer checksum.");
+ 				return DC_STATUS_PROTOCOL;
+ 			}
+ 
+ 			// Verify the last byte of the answer.
+-			if (answer[PAGESIZE / 2 + 1] != END) {
++			if (answer[XPAGESIZE / 2 + 1] != END) {
+ 				ERROR (abstract->context, "Unexpected answer byte.");
+ 				return DC_STATUS_PROTOCOL;
+ 			}
+ 
+ 			// Append the answer to the output buffer.
+-			memcpy (data + i * PAGESIZE / 2, answer, PAGESIZE / 2);
++			memcpy (data + i * XPAGESIZE / 2, answer, XPAGESIZE / 2);
+ 		}
+ 	} else {
+ 		// Return an empty device identification string.
+-		memset (data, 0x00, PAGESIZE);
++		memset (data, 0x00, XPAGESIZE);
+ 	}
+ 
+ 	return DC_STATUS_SUCCESS;
+@@ -622,47 +622,47 @@ oceanic_vtpro_device_read (dc_device_t *
+ {
+ 	oceanic_vtpro_device_t *device = (oceanic_vtpro_device_t*) abstract;
+ 
+-	if ((address % PAGESIZE != 0) ||
+-		(size    % PAGESIZE != 0))
++	if ((address % XPAGESIZE != 0) ||
++		(size    % XPAGESIZE != 0))
+ 		return DC_STATUS_INVALIDARGS;
+ 
+ 	unsigned int nbytes = 0;
+ 	while (nbytes < size) {
+ 		// Calculate the number of packages.
+-		unsigned int npackets = (size - nbytes) / PAGESIZE;
++		unsigned int npackets = (size - nbytes) / XPAGESIZE;
+ 		if (npackets > MULTIPAGE)
+ 			npackets = MULTIPAGE;
+ 
+ 		// Read the package.
+-		unsigned int first =  address / PAGESIZE;
++		unsigned int first =  address / XPAGESIZE;
+ 		unsigned int last  = first + npackets - 1;
+-		unsigned char answer[(PAGESIZE + 1) * MULTIPAGE] = {0};
++		unsigned char answer[(XPAGESIZE + 1) * MULTIPAGE] = {0};
+ 		unsigned char command[6] = {0x34,
+ 				(first >> 8) & 0xFF, // high
+ 				(first     ) & 0xFF, // low
+ 				(last >> 8) & 0xFF, // high
+ 				(last     ) & 0xFF, // low
+ 				0x00};
+-		dc_status_t rc = oceanic_vtpro_transfer (device, command, sizeof (command), answer, (PAGESIZE + 1) * npackets);
++		dc_status_t rc = oceanic_vtpro_transfer (device, command, sizeof (command), answer, (XPAGESIZE + 1) * npackets);
+ 		if (rc != DC_STATUS_SUCCESS)
+ 			return rc;
+ 
+ 		unsigned int offset = 0;
+ 		for (unsigned int i = 0; i < npackets; ++i) {
+ 			// Verify the checksum of the answer.
+-			unsigned char crc = answer[offset + PAGESIZE];
+-			unsigned char ccrc = checksum_add_uint8 (answer + offset, PAGESIZE, 0x00);
++			unsigned char crc = answer[offset + XPAGESIZE];
++			unsigned char ccrc = checksum_add_uint8 (answer + offset, XPAGESIZE, 0x00);
+ 			if (crc != ccrc) {
+ 				ERROR (abstract->context, "Unexpected answer checksum.");
+ 				return DC_STATUS_PROTOCOL;
+ 			}
+ 
+-			memcpy (data, answer + offset, PAGESIZE);
++			memcpy (data, answer + offset, XPAGESIZE);
+ 
+-			offset += PAGESIZE + 1;
+-			nbytes += PAGESIZE;
+-			address += PAGESIZE;
+-			data += PAGESIZE;
++			offset += XPAGESIZE + 1;
++			nbytes += XPAGESIZE;
++			address += XPAGESIZE;
++			data += XPAGESIZE;
+ 		}
+ 	}
+ 
+--- a/src/oceanic_vtpro_parser.c
++++ b/src/oceanic_vtpro_parser.c
+@@ -155,7 +155,7 @@ oceanic_vtpro_parser_get_field (dc_parse
+ 	const unsigned char *data = abstract->data;
+ 	unsigned int size = abstract->size;
+ 
+-	if (size < 7 * PAGESIZE / 2)
++	if (size < 7 * XPAGESIZE / 2)
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	if (!parser->cached) {
+@@ -170,7 +170,7 @@ oceanic_vtpro_parser_get_field (dc_parse
+ 		parser->maxdepth = statistics.maxdepth;
+ 	}
+ 
+-	unsigned int footer = size - PAGESIZE;
++	unsigned int footer = size - XPAGESIZE;
+ 
+ 	unsigned int oxygen = 0;
+ 	unsigned int maxdepth = 0;
+@@ -237,7 +237,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 	const unsigned char *data = abstract->data;
+ 	unsigned int size = abstract->size;
+ 
+-	if (size < 7 * PAGESIZE / 2)
++	if (size < 7 * XPAGESIZE / 2)
+ 		return DC_STATUS_DATAFORMAT;
+ 
+ 	unsigned int time = 0;
+@@ -259,14 +259,14 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 	// Initialize the state for the timestamp processing.
+ 	unsigned int timestamp = 0, count = 0, i = 0;
+ 
+-	unsigned int offset = 5 * PAGESIZE / 2;
+-	while (offset + PAGESIZE / 2 <= size - PAGESIZE) {
++	unsigned int offset = 5 * XPAGESIZE / 2;
++	while (offset + XPAGESIZE / 2 <= size - XPAGESIZE) {
+ 		dc_sample_value_t sample = {0};
+ 
+ 		// Ignore empty samples.
+-		if (array_isequal (data + offset, PAGESIZE / 2, 0x00) ||
+-			array_isequal (data + offset, PAGESIZE / 2, 0xFF)) {
+-			offset += PAGESIZE / 2;
++		if (array_isequal (data + offset, XPAGESIZE / 2, 0x00) ||
++			array_isequal (data + offset, XPAGESIZE / 2, 0xFF)) {
++			offset += XPAGESIZE / 2;
+ 			continue;
+ 		}
+ 
+@@ -288,12 +288,12 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 				// With a depth based sample interval, the exact number
+ 				// of samples for a single timestamp needs to be counted.
+ 				count = 1;
+-				unsigned int idx = offset + PAGESIZE / 2 ;
+-				while (idx + PAGESIZE / 2 <= size - PAGESIZE) {
++				unsigned int idx = offset + XPAGESIZE / 2 ;
++				while (idx + XPAGESIZE / 2 <= size - XPAGESIZE) {
+ 					// Ignore empty samples.
+-					if (array_isequal (data + idx, PAGESIZE / 2, 0x00) ||
+-						array_isequal (data + idx, PAGESIZE / 2, 0xFF)) {
+-						idx += PAGESIZE / 2;
++					if (array_isequal (data + idx, XPAGESIZE / 2, 0x00) ||
++						array_isequal (data + idx, XPAGESIZE / 2, 0xFF)) {
++						idx += XPAGESIZE / 2;
+ 						continue;
+ 					}
+ 
+@@ -301,7 +301,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 					if (next != current)
+ 						break;
+ 
+-					idx += PAGESIZE / 2;
++					idx += XPAGESIZE / 2;
+ 					count++;
+ 				}
+ 			}
+@@ -317,7 +317,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 			}
+ 			if (i >= count) {
+ 				WARNING (abstract->context, "Unexpected sample with the same timestamp ignored.");
+-				offset += PAGESIZE / 2;
++				offset += XPAGESIZE / 2;
+ 				continue;
+ 			}
+ 		}
+@@ -335,7 +335,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 
+ 		// Vendor specific data
+ 		sample.vendor.type = SAMPLE_VENDOR_OCEANIC_VTPRO;
+-		sample.vendor.size = PAGESIZE / 2;
++		sample.vendor.size = XPAGESIZE / 2;
+ 		sample.vendor.data = data + offset;
+ 		if (callback) callback (DC_SAMPLE_VENDOR, sample, userdata);
+ 
+@@ -374,7 +374,7 @@ oceanic_vtpro_parser_samples_foreach (dc
+ 			if (callback) callback (DC_SAMPLE_DECO, sample, userdata);
+ 		}
+ 
+-		offset += PAGESIZE / 2;
++		offset += XPAGESIZE / 2;
+ 	}
+ 
+ 	return DC_STATUS_SUCCESS;
diff --git a/srcpkgs/libdivecomputer-subsurface/template b/srcpkgs/libdivecomputer-subsurface/template
index 30b595dfd170..e996984352c0 100644
--- a/srcpkgs/libdivecomputer-subsurface/template
+++ b/srcpkgs/libdivecomputer-subsurface/template
@@ -5,13 +5,13 @@ revision=1
 wrksrc="libdivecomputer-subsurface-branch-${version}"
 build_style=gnu-configure
 hostmakedepends="libtool automake autoconf pkg-config"
+makedepends="libusb-devel libmtp-devel hidapi-devel libbluetooth-devel"
 short_desc="Subsurface version of libdivecomputer"
 maintainer="Alan Brown <adbrown@rocketmail.com>"
 license="LGPL-2.1-only"
 homepage="https://subsurface-divelog.org/"
 distfiles="${homepage}/downloads/${pkgname}-branch-${version}.tgz"
 checksum=94b69d1b12d3c35376fdce96088c0cce21392a37a0ff67991246171d22055c02
-shlib_provides="libdivecomputer.so"
 
 pre_configure() {
 	autoreconf -fi

From a936797c55abf5f8781382b68a795ca0f842ab1a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 26 Nov 2021 11:19:50 +0700
Subject: [PATCH 6/6] fixup! New package: Subsurface-5.0.5

---
 .../patches/core-depends-generated-ui.patch           | 10 ++++++++++
 srcpkgs/Subsurface/patches/make-or-ninja.patch        | 11 +++++++++++
 srcpkgs/Subsurface/template                           |  6 +-----
 3 files changed, 22 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/Subsurface/patches/core-depends-generated-ui.patch
 create mode 100644 srcpkgs/Subsurface/patches/make-or-ninja.patch

diff --git a/srcpkgs/Subsurface/patches/core-depends-generated-ui.patch b/srcpkgs/Subsurface/patches/core-depends-generated-ui.patch
new file mode 100644
index 000000000000..f35aa99ef86e
--- /dev/null
+++ b/srcpkgs/Subsurface/patches/core-depends-generated-ui.patch
@@ -0,0 +1,10 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -414,6 +414,7 @@ elseif (SUBSURFACE_TARGET_EXECUTABLE MAT
+ 	add_dependencies(subsurface_interface subsurface_generated_ui)
+ 	add_dependencies(subsurface_profile subsurface_generated_ui)
+ 	add_dependencies(subsurface_models_desktop subsurface_generated_ui)
++	add_dependencies(subsurface_corelib subsurface_generated_ui)
+ 	add_dependencies(subsurface_generated_ui version)
+ elseif (SUBSURFACE_TARGET_EXECUTABLE MATCHES "DownloaderExecutable")
+ 	set(DOWNLOADER_APP
diff --git a/srcpkgs/Subsurface/patches/make-or-ninja.patch b/srcpkgs/Subsurface/patches/make-or-ninja.patch
new file mode 100644
index 000000000000..08f11a434b58
--- /dev/null
+++ b/srcpkgs/Subsurface/patches/make-or-ninja.patch
@@ -0,0 +1,11 @@
+--- a/cmake/Modules/RunOnBuildDir.cmake
++++ b/cmake/Modules/RunOnBuildDir.cmake
+@@ -25,7 +25,7 @@ if(NOT NO_DOCS)
+ 	add_custom_target(
+ 		documentation ALL
+ 		COMMAND
+-		${CMAKE_MAKE_PROGRAM} -C ${CMAKE_SOURCE_DIR}/Documentation OUT=${CMAKE_BINARY_DIR}/Documentation/ doc
++		make -C ${CMAKE_SOURCE_DIR}/Documentation OUT=${CMAKE_BINARY_DIR}/Documentation/ doc
+ 		DEPENDS documentationLink
+ 	)
+ endif()
diff --git a/srcpkgs/Subsurface/template b/srcpkgs/Subsurface/template
index 4bc80569aeeb..c93cdbe19ee5 100644
--- a/srcpkgs/Subsurface/template
+++ b/srcpkgs/Subsurface/template
@@ -4,9 +4,7 @@ version=5.0.5
 revision=1
 build_style=cmake
 configure_args="-DSUBSURFACE_TARGET_EXECUTABLE=DesktopExecutable
- -DCMAKE_BUILD_TYPE=Release -DBTSUPPORT=ON -DNO_USERMANUAL=OFF
- -DNO_PRINTING=OFF"
-make_cmd=make
+ -DBTSUPPORT=ON -DNO_USERMANUAL=OFF -DNO_PRINTING=OFF"
 hostmakedepends="pkg-config autoconf automake libtool qt5-devel"
 makedepends="libdivecomputer-subsurface-devel libbluetooth-devel libcurl-devel
  sqlite-devel libssh2-devel eudev-libudev-devel libusb-devel libxml2-devel
@@ -20,5 +18,3 @@ license="GPL-2.0-only"
 homepage="https://subsurface-divelog.org/"
 distfiles="${homepage}/downloads/${pkgname}-${version}.tgz"
 checksum=fe0ff8b1f65441b2a76a27a0072fe5faaf734ee08f5e19845400d0fc3d35541c
-
-export CMAKE_GENERATOR="Unix Makefiles"

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2021-11-26 13:08 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-21 15:59 [PR PATCH] Subsurface adbrown101
2021-11-21 18:39 ` [PR REVIEW] Subsurface ericonr
2021-11-21 18:39 ` ericonr
2021-11-21 18:39 ` ericonr
2021-11-21 18:39 ` ericonr
2021-11-21 18:39 ` ericonr
2021-11-21 18:39 ` ericonr
2021-11-22 12:30 ` [PR PATCH] [Updated] Subsurface adbrown101
2021-11-22 13:45 ` adbrown101
2021-11-22 14:45 ` [PR REVIEW] Subsurface adbrown101
2021-11-22 14:45 ` adbrown101
2021-11-22 14:46 ` adbrown101
2021-11-22 14:46 ` adbrown101
2021-11-22 14:46 ` adbrown101
2021-11-22 14:46 ` adbrown101
2021-11-24  9:25 ` [PR PATCH] [Updated] Subsurface adbrown101
2021-11-24 12:08 ` [PR REVIEW] Subsurface adbrown101
2021-11-24 12:17 ` Subsurface adbrown101
2021-11-24 19:36 ` Subsurface Chocimier
2021-11-25 12:04 ` [PR PATCH] [Updated] Subsurface adbrown101
2021-11-25 12:52 ` adbrown101
2021-11-25 18:24 ` adbrown101
2021-11-25 18:27 ` Subsurface adbrown101
2021-11-25 19:31 ` Subsurface ericonr
2021-11-26  3:43 ` [PR REVIEW] Subsurface sgn
2021-11-26  3:52 ` Subsurface sgn
2021-11-26  4:24 ` Subsurface sgn
2021-11-26  4:28 ` [PR PATCH] [Updated] Subsurface sgn
2021-11-26 12:56 ` [PR REVIEW] Subsurface adbrown101
2021-11-26 13:08 ` [PR PATCH] [Updated] Subsurface adbrown101

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).