summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorMoses Narrow2020-12-14 19:21:38 -0600
committerMoses Narrow2020-12-14 19:21:38 -0600
commitc86dc3c4e2c96af290a9ae8fc8852cf5d0e76244 (patch)
tree86bbfdb02a3411e43462bd1c1e4a2d6fe30a8f33 /PKGBUILD
parent98b32a5bc728844e0b240522604a76ea4e6c92f7 (diff)
downloadaur-c86dc3c4e2c96af290a9ae8fc8852cf5d0e76244.tar.gz
update build
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD121
1 files changed, 47 insertions, 74 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 911c8e05a3de..fe531be63b91 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,46 +1,24 @@
# Maintainer: Moses Narrow <moe_narrow@use.startmail.com>
# Maintainer: Rudi [KittyCash] <rudi@skycoinmail.com>
pkgname=cx-latest
-pkgname1=cx
-projectname=skycoin
-githuborg=skycoinproject
+_pkgname=cx
+_projectname=skycoin
+_githuborg=${_projectname}
pkgdesc="CX Skycoin Blockchain Programming Language - most recent github commits (+opengl)"
pkgver='autogenerated'
-pkggopath="github.com/${githuborg}/${pkgname1}"
-pkgrel=3
+_pkggopath="github.com/${_githuborg}/${_pkgname}"
+pkgrel=4
arch=('any')
-url="https://${pkggopath}"
+url="https://${_pkggopath}"
license=()
-makedepends=('git' 'go' 'gcc' 'glade' 'xorg-server-xvfb' 'libxinerama' 'libxcursor' 'libxrandr' 'libglvnd' 'libglade' 'mesa' 'libxi' 'cairo' 'perl' 'pango' 'skycoin-keyring')
-source=("git+${url}.git#branch=${BRANCH:-develop}"
-"PKGBUILD.sig")
-sha256sums=('SKIP'
- 'SKIP')
-validpgpkeys=('DE08F924EEE93832DABC642CA8DC761B1C0C0CFC' # Moses Narrow <moe_narrow@use.startmail.com>
- '98F934F04F9334B81DFA3398913BBD5206B19620') #iketheadore skycoin <luxairlake@protonmail.com>
-
-export GOOS=linux
-export GOPATH="${srcdir}"
-export CGO_ENABLED=1
-
-case "$CARCH" in
-x86) export GOARCH="386" GO386="387" ;;
-x86_64) export GOARCH="amd64" ;;
-arm*) export GOARCH="arm" ;;
-armel) export GOARCH="arm" GOARM="5" ;;
-armhf) export GOARCH="arm" GOARM="6" ;;
-armv7) export GOARCH="arm" GOARM="7" ;;
-armv8) export GOARCH="arm64" ;;
-aarch64) export GOARCH="arm64" ;;
-mips) export GOARCH="mips" ;;
-mips64) export GOARCH="mips64" ;;
-mips64el) export GOARCH="mips64le" ;;
-mipsel) export GOARCH="mipsle" ;;
-*) return 1 ;;
- esac
+makedepends=('git' 'go' 'gcc' 'glade' 'xorg-server-xvfb' 'libxinerama' 'libxcursor' 'libxrandr' 'libglvnd' 'libglade' 'mesa' 'libxi' 'cairo' 'perl' 'pango' 'goyacc' 'musl' 'kernel-headers-musl')
+source=("git+${url}.git#branch=${BRANCH:-develop}")
+sha256sums=('SKIP')
+#validpgpkeys=('DE08F924EEE93832DABC642CA8DC761B1C0C0CFC' # Moses Narrow <moe_narrow@use.startmail.com>
+# '98F934F04F9334B81DFA3398913BBD5206B19620') #iketheadore skycoin <luxairlake@protonmail.com>
pkgver() {
- cd "${srcdir}/${pkgname1}"
+ cd "${srcdir}/${_pkgname}"
local date=$(git log -1 --format="%cd" --date=short | sed s/-//g)
local count=$(git rev-list --count HEAD)
local commit=$(git rev-parse --short HEAD)
@@ -48,45 +26,39 @@ mipsel) export GOARCH="mipsle" ;;
}
prepare() {
- gpg --import key
+ #gpg --import key
#verify PKGBUILD signature
- gpg --verify ${srcdir}/PKGBUILD.sig ../PKGBUILD
+ #gpg --verify ${srcdir}/PKGBUILD.sig ../PKGBUILD
# https://wiki.archlinux.org/index.php/Go_package_guidelines
- mkdir -p ${srcdir}/go/src/${pkggopath//${pkgname1}/} "${srcdir}"/go/bin
- ln -rTsf ${srcdir}/${pkgname1} ${srcdir}/go/src/${pkggopath}
- cd ${srcdir}/go/src/${pkggopath}/
+ mkdir -p ${srcdir}/go/src/${_pkggopath//${_pkgname}/} "${srcdir}"/go/bin
+ ln -rTsf ${srcdir}/${_pkgname} ${srcdir}/go/src/${_pkggopath}
+ cd ${srcdir}/go/src/${_pkggopath}/
git checkout develop
git submodule --quiet update --init --recursive
-
-#Lines 58 & 59 of the Makefile will try to install debian dependancies if they are not omitted
- sed '58s/.*/#&/' Makefile > Makefile1
- mv Makefile1 Makefile
- sed '59s/.*/#&/' Makefile > Makefile1
- mv Makefile1 Makefile
-
- export GOPATH="${srcdir}"/go
- export GOBIN=${GOPATH}/bin
- export PATH=${GOPATH}/bin:${PATH}
}
build() {
export GOPATH=${srcdir}/go
export GOBIN=${GOPATH}/bin
- export PATH=${GOPATH}/bin:${PATH}
+# export PATH=${GOPATH}/bin:${PATH}
# cp -b Makefile ${srcdir}/go/src/${pkggopath}/Makefile
- cd ${srcdir}/go/src/${pkggopath}
- make install-gfx-deps
- make build-full
-
- cmddir=${srcdir}/go/src/github.com/${githuborg}/${pkgname1}/cmd
- #using go build for determinism
- cd ${cmddir}/newcoin
- msg2 'building cx-newcoin binary'
- go build -trimpath -ldflags '-extldflags ${LDFLAGS}' -ldflags=-buildid= -o $GOBIN/ .
- #binary transparency
- cd $GOBIN
- msg2 'binary sha256sums'
- sha256sum $(ls)
+cd ${srcdir}/go/src/${_pkggopath}
+#make build-full
+#go get -u github.com/SkycoinProject/nex ##added as makedep
+#go get -u modernc.org/goyacc ##added as makedep
+goyacc -o cxgo/cxgo0/cxgo0.go cxgo/cxgo0/cxgo0.y
+goyacc -o cxgo/parser/cxgo.go cxgo/parser/cxgo.y
+ _cmddir=${srcdir}/go/src/${_pkggopath}/cmd
+#static compilation
+_msg2 'building cx binary'
+cd ${srcdir}/go/src/${_pkggopath}/
+go build -tags="base cxfx" -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -i -o $GOBIN/ cxgo/.
+cd ${srcdir}/go/src/${_pkggopath}/cmd/newcoin
+_msg2 'building newcoin binary'
+go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOBIN/ . #binary transparency
+cd $GOBIN
+msg2 'binary sha256sums'
+sha256sum $(ls)
}
@@ -94,18 +66,19 @@ package() {
options=(!strip staticlibs)
#make dirs
mkdir -p ${pkgdir}/usr/bin
-mkdir -p ${pkgdir}/usr/lib/${projectname}/go/bin
-mkdir -p ${pkgdir}/usr/lib/${projectname}/go/src/github.com/${projectname}/
-mkdir -p ${pkgdir}/usr/lib/${projectname}/${pkgname1}/
+mkdir -p ${pkgdir}/opt/${_pkgname}/bin
#install sources
#cp -r ${srcdir}/${pkgname1} ${pkgdir}/usr/lib/${projectname}/go/src/github.com/${projectname}/${pkgname1}
-#install binary
-#^MAKE DEPENDANCIES ARE IN GOBIN; GET ONLY CX & NEWCOIN
-install -Dm755 ${srcdir}/go/bin/newcoin ${pkgdir}/usr/lib/${projectname}/go/bin/newcoin
-ln -rTsf ${pkgdir}/usr/lib/${projectname}/go/bin/newcoin ${pkgdir}/usr/bin/newcoin
-chmod 755 ${pkgdir}/usr/bin/newcoin
-install -Dm755 ${srcdir}/go/bin/${pkgname1} ${pkgdir}/usr/lib/${projectname}/go/bin/${pkgname1}
-ln -rTsf ${pkgdir}/usr/lib/${projectname}/go/bin/${pkgname1} ${pkgdir}/usr/bin/${pkgname1}
-chmod 755 ${pkgdir}/usr/bin/${pkgname1}
+_msg2 'installing binaries'
+install -Dm755 ${srcdir}/go/bin/newcoin ${pkgdir}/opt/${_pkgname}/bin/newcoin
+ln -rTsf ${pkgdir}/opt/${_pkgname}/bin ${pkgdir}/usr/bin/newcoin
+install -Dm755 ${srcdir}/go/bin/${_pkgname} ${pkgdir}/opt/${_pkgname}/bin/${_pkgname}
+ln -rTsf ${pkgdir}/opt/${_pkgname}/bin/${_pkgname} ${pkgdir}/usr/bin/${_pkgname}
+chmod 755 ${pkgdir}/usr/bin/*
+}
+_msg2() {
+(( QUIET )) && return
+local mesg=$1; shift
+printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@"
}