Skip to content

Commit a3b9e6e

Browse files
committed
Improve build script
1 parent 3ba722e commit a3b9e6e

2 files changed

Lines changed: 50 additions & 9 deletions

File tree

INFO

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package="synoedit"
22
displayname="Syno Edit"
33
version="1.0.0"
4-
firmware="1.1.0-0"
4+
os_min_ver="6.1-14715"
55
description="A simple text editor GUI for Synology. JavaScript editor implemented using CodeMirror."
66
arch="noarch"
77
maintainer="publicarray"

build.sh

Lines changed: 49 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,26 @@
44

55
set -u
66

7+
# https://originhelp.synology.com/developer-guide/appendix/index.html
8+
# https://github.com/SynoCommunity/spksrc/wiki/Architecture-per-Synology-model
9+
# https://github.com/SynoCommunity/spksrc/blob/master/mk/spksrc.common.mk
10+
ARM5_ARCHES="88f6281"
11+
ARM7_ARCHES="alpine armada370 armada375 armada38x armadaxp comcerto2k monaco hi3535 ipq806x northstarplus"
12+
ARM8_ARCHES="rtd1296 armada37xx aarch64"
13+
ARM_ARCHES="$ARM5_ARCHES $ARM7_ARCHES $ARM8_ARCHES"
14+
PPC32_ARCHES="powerpc ppc824x ppc853x ppc854x qoriq"
15+
x86_ARCHES="evansport"
16+
x64_ARCHES="apollolake avoton braswell broadwell broadwellnk bromolow cedarview denverton dockerx64 grantley kvmx64 x86 x64 x86_64"
17+
# x64_ARCHES="x86 cedarview bromolow"
18+
719
usage() {
820
echo "Usage: $0 command"
921
echo
1022
echo "Commands:"
1123
echo " compress compresses compiled binary with upx"
1224
echo " update update dependencies with yarn or npm"
13-
echo " dependencies installs dependencies and bundles them through browserify"
14-
echo " all Runs browserify and Compiles go project for all architectures"
25+
echo " dependencies installs npm and go dependencies (yarn/npm and dep)"
26+
echo " all Compiles go project for all architectures"
1527
echo " compile compile go project"
1628
echo " package create spk"
1729
echo " dev runs '_cp', 'compile' and 'package' commands"
@@ -74,11 +86,37 @@ dependencies() {
7486
compileAll() {
7587
dependencies
7688

89+
## match arches to go build arches:
7790
arch="arm arm64 386 amd64 ppc64"
78-
for ARCH in ${arch}
79-
do
80-
compile "$ARCH"
81-
package "$ARCH"
91+
for ARCH in ${arch}; do
92+
compile "$ARCH"
93+
supported_arches=""
94+
case "$ARCH" in
95+
"arm")
96+
supported_arches="$ARM5_ARCHES $ARM7_ARCHES"
97+
package "$ARCH" "ipq806x northstarplus" "1.1"
98+
99+
supported_arches=$(echo "$supported_arches" | sed 's/ ipq806x//' | sed 's/ northstarplus//')
100+
;;
101+
"arm64")
102+
supported_arches="$ARM8_ARCHES"
103+
;;
104+
"386")
105+
supported_arches="$x86_ARCHES"
106+
;;
107+
"amd64")
108+
supported_arches="$x64_ARCHES"
109+
;;
110+
"ppc64")
111+
supported_arches=""
112+
;;
113+
*)
114+
echo "Unsupported Architecture!"
115+
exit 1
116+
;;
117+
esac
118+
OS_MIN_VER=6.1-14715
119+
package "$ARCH" "$supported_arches" "$OS_MIN_VER"
82120
done
83121
}
84122

@@ -119,6 +157,8 @@ compress() { # not recommended, slows down launch time ~0.8s
119157
## Step 3 Compress package and create spk
120158
package() {
121159
ARCH=${1:-native}
160+
SUPP_ARCH=${2:-noarch}
161+
OS_MIN_VER=${3:-6.1-14715}
122162
# sha1sum="$(shell command -v sha1sum 2>/dev/null || command -v gsha1sum 2>/dev/null)"
123163
# sha256sum="$(shell command -v sha256sum 2>/dev/null || command -v gsha256sum 2>/dev/null)"
124164
md5sum="$(shell command -v md5sum 2>/dev/null || command -v gmd5sum 2>/dev/null)"
@@ -136,12 +176,13 @@ package() {
136176
## Create checksum
137177
checksum=$($md5sum package.tgz | awk '{print $1}')
138178
sed -i '' -e "s/checksum=.*/checksum=\"${checksum}\"/" INFO
139-
# sed -i '' -e "s/arch=.*/arch=\"${ARCH}\"/" INFO
179+
sed -i '' -e "s/arch=.*/arch=\"${SUPP_ARCH}\"/" INFO
180+
sed -i '' -e "s/os_min_ver=.*/os_min_ver=\"${OS_MIN_VER}\"/" INFO
140181
# pkg_get_spk_platform
141182
# pkg_get_spk_family
142183

143184
## Create spk
144-
tar cpf synoedit-"$ARCH".spk \
185+
tar cpf synoedit-"$ARCH"-"$OS_MIN_VER".spk \
145186
--exclude='node_modules' \
146187
--exclude='*.afdesign' \
147188
--exclude='*.afphoto' \

0 commit comments

Comments
 (0)