From 9221c1d06e9185b734d58c155764ed24fcfc48ed Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Tue, 14 Jan 2020 04:46:41 -0600
Subject: [PATCH 1/2] newapkbuild: Drastically modernise output APKBUILD file
---
newapkbuild.in | 44 +++++++++++++++++++++++++++++++-------------
1 file changed, 31 insertions(+), 13 deletions(-)
diff --git a/newapkbuild.in b/newapkbuild.in
index 85f838f..dbcef14 100644
--- a/newapkbuild.in
+++ b/newapkbuild.in
@@ -68,13 +68,9 @@ build_cmake() {
-DCMAKE_BUILD_TYPE=RelWithDebugInfo \\
-DCMAKE_CXX_FLAGS="\$CXXFLAGS" \\
-DCMAKE_C_FLAGS="\$CFLAGS" \\
- \${CMAKE_CROSSOPTS}
+ \${CMAKE_CROSSOPTS} \\
+ .
make
-}
-
-check() {
- cd "\$builddir"
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
__EOF__
}
@@ -115,6 +111,12 @@ check_make() {
__EOF__
}
+check_cmake() {
+ cat >>APKBUILD<<__EOF__
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+__EOF__
+}
+
check_python() {
cat >>APKBUILD<<__EOF__
python3 setup.py test
@@ -193,7 +195,7 @@ newaport() {
python) makedepends="python3-dev";;
cmake) makedepends="cmake";;
meson) makedepends="meson";;
- *) makedepends="\$depends_dev";;
+ *) makedepends="";;
esac
# Replace pkgver in $source
@@ -226,9 +228,15 @@ url="$url"
arch="all"
license="$license"
depends="$depends"
-depends_dev=""
makedepends="$makedepends"
+__EOF__
+ if [ -n "$install" ]; then
+ cat >>APKBUILD<<__EOF__
install="$install"
+__EOF__
+ fi
+
+ cat >>APKBUILD<<__EOF__
subpackages="\$pkgname-dev \$pkgname-doc"
source="$source"
__EOF__
@@ -241,7 +249,12 @@ __EOF__
builddir=$(echo ${i#*/} | sed "s/$pv/\$pkgver/g")
fi
done
- printf 'builddir="$srcdir/%s"\n\n' "$builddir" >> APKBUILD
+ if [ -n "$sdir" ] && [ "$sdir" = "src/$pkgname-$pv" ]; then
+ # No builddir needed.
+ :
+ else
+ printf 'builddir="$srcdir/%s"\n\n' "$builddir" >> APKBUILD
+ fi
# Subpackage -dev is usually required only for C/C++. Since depends_dev
# confuses a lot people, remove it if there's no .h or .hpp file.
@@ -271,7 +284,6 @@ __EOF__
# Create build() function
cat >>APKBUILD<<__EOF__
build() {
- cd "\$builddir"
__EOF__
case "$buildtype" in
@@ -287,6 +299,8 @@ __EOF__
build_perl;;
python)
build_python;;
+ *)
+ printf '# Add build instructions here.' >> APKBUILD
esac
cat >>APKBUILD<<__EOF__
@@ -297,14 +311,17 @@ __EOF__
# Create check() function
cat >>APKBUILD<<__EOF__
check() {
- cd "\$builddir"
__EOF__
case "$buildtype" in
- make|cmake|autotools|perl)
+ make|autotools|perl)
check_make;;
+ cmake)
+ check_cmake;;
python)
check_python;;
+ *)
+ printf '# Add test instructions here.' >> APKBUILD
esac
cat >>APKBUILD<<__EOF__
@@ -315,7 +332,6 @@ __EOF__
# Create package() function
cat >>APKBUILD<<__EOF__
package() {
- cd "\$builddir"
__EOF__
case "$buildtype" in
@@ -329,6 +345,8 @@ __EOF__
package_perl;;
python)
package_python;;
+ *)
+ printf '# Add packaging instructions here.' >> APKBUILD
esac
if [ -n "$cpinitd" ]; then
--
2.24.1
From 59cb9822c0ac347d58f1c37627a58fe14dce965d Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Tue, 14 Jan 2020 04:47:36 -0600
Subject: [PATCH 2/2] newapkbuild: Newline after source
---
newapkbuild.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/newapkbuild.in b/newapkbuild.in
index dbcef14..9c4ffbf 100644
--- a/newapkbuild.in
+++ b/newapkbuild.in
@@ -251,7 +251,7 @@ __EOF__
done
if [ -n "$sdir" ] && [ "$sdir" = "src/$pkgname-$pv" ]; then
# No builddir needed.
- :
+ printf '\n' >> APKBUILD
else
printf 'builddir="$srcdir/%s"\n\n' "$builddir" >> APKBUILD
fi
--
2.24.1