mirror of
https://onedev.site.tesses.net/crosslang
synced 2026-02-08 17:15:45 +00:00
add arch btw
This commit is contained in:
@@ -42,6 +42,31 @@ jobs:
|
||||
bash wiibuild.sh
|
||||
useTTY: true
|
||||
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
|
||||
- !CommandStep
|
||||
name: Build archlinux
|
||||
runInContainer: true
|
||||
image: git.tesseslanguage.com/tesses50/arch-builds:2025-11-11
|
||||
interpreter: !DefaultInterpreter
|
||||
commands: |
|
||||
wget -O /root/repository.key wget https://git.tesseslanguage.com/api/packages/tesses50/arch/repository.key
|
||||
pacman-key --add /root/repository.key
|
||||
pacman-key --config /opt/cross/ppc/pacman.conf --add /root/repository.key
|
||||
printf "[tesses50.git.tesseslanguage.com]\nSigLevel = Optional TrustAll\nServer = https://git.tesseslanguage.com/api/packages/tesses50/arch/core/\$arch\n" >> /etc/pacman.conf
|
||||
printf "[tesses50.git.tesseslanguage.com]\nSigLevel = Optional TrustAll\nServer = https://git.tesseslanguage.com/api/packages/tesses50/arch/core/\$arch\n" >> /opt/cross/ppc/pacman.conf
|
||||
|
||||
pacman --noconfirm -Sy mbedtls curl tesses-framework libffi
|
||||
pacman --config /opt/cross/ppc/pacman.conf --noconfirm -Sy mbedtls tesses-framework libffi
|
||||
cp Packaging/Linux/PKGBUILD /home/build/PKGBUILD
|
||||
cp Packaging/Linux/build-arch.sh /home/build/build-arch.sh
|
||||
chmod 755 /home/build/build-arch.sh
|
||||
chown build:build /home/build/PKGBUILD
|
||||
chown build:build /home/build/build-arch.sh
|
||||
su build -c /home/build/build-arch.sh
|
||||
envVars:
|
||||
- name: GITEA_AUTH
|
||||
value: '@secret:GITEA_AUTH@'
|
||||
useTTY: true
|
||||
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
|
||||
- !CommandStep
|
||||
name: Build and Publish Deb Package (Plucky)
|
||||
runInContainer: true
|
||||
|
||||
66
Packaging/Linux/PKGBUILD
Normal file
66
Packaging/Linux/PKGBUILD
Normal file
@@ -0,0 +1,66 @@
|
||||
# Maintainer: Mike Nolan <tesses@tesses.net>
|
||||
pkgname=crosslang # '-bzr', '-git', '-hg' or '-svn'
|
||||
pkgver=1.0.0
|
||||
pkgrel=1
|
||||
pkgdesc=""
|
||||
arch=('x86_64' 'powerpc')
|
||||
url="https://onedev.site.tesses.net/crosslang"
|
||||
license=('GPLv3')
|
||||
groups=()
|
||||
depends=('mbedtls' 'tesses-framework' 'libffi')
|
||||
makedepends=('git' 'cmake' 'make' 'base-devel' 'wget') # 'bzr', 'git', 'mercurial' or 'subversion'
|
||||
install=
|
||||
source=('crosslang::git+https://onedev.site.tesses.net/crosslang')
|
||||
noextract=()
|
||||
sha256sums=('SKIP')
|
||||
if [[ -z "$CMAKE_TOOLCHAIN" ]]; then
|
||||
options=(!strip)
|
||||
else
|
||||
options=(!buildflags !strip)
|
||||
fi
|
||||
# Please refer to the 'USING VCS SOURCES' section of the PKGBUILD man page for
|
||||
# a description of each element in the source array.
|
||||
|
||||
pkgver() {
|
||||
cd "$srcdir/${pkgname}"
|
||||
|
||||
# The examples below are not absolute and need to be adapted to each repo. The
|
||||
# primary goal is to generate version numbers that will increase according to
|
||||
# pacman's version comparisons with later commits to the repo. The format
|
||||
# VERSION='VER_NUM.rREV_NUM.HASH', or a relevant subset in case VER_NUM or HASH
|
||||
# are not available, is recommended.
|
||||
|
||||
# Git, no tags available
|
||||
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
|
||||
}
|
||||
|
||||
prepare() {
|
||||
cd "$srcdir/${pkgname}"
|
||||
wget -O Tesses.CrossLang.ShellPackage-1.0.0.0-prod.crvm https://downloads.tesses.net/ShellPackage.crvm
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "$srcdir/${pkgname}"
|
||||
mkdir build
|
||||
|
||||
if [[ -z "$CMAKE_TOOLCHAIN" ]]; then
|
||||
cmake -S . -B build -DCMAKE_INSTALL_PREFIX=/usr -DCROSSLANG_FETCHCONTENT=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCROSSLANG_ENABLE_FFI=ON
|
||||
else
|
||||
cmake -S . -B build -DCMAKE_INSTALL_PREFIX=/usr -DCROSSLANG_FETCHCONTENT=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE="$CMAKE_TOOLCHAIN" -DCROSSLANG_ENABLE_FFI=ON
|
||||
fi
|
||||
|
||||
cd build
|
||||
make -j`nproc`
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
package() {
|
||||
cd "$srcdir/${pkgname}/build"
|
||||
make install DESTDIR="$pkgdir/"
|
||||
mkdir -p "$pkgdir/share/Tesses/CrossLang/"
|
||||
cp "$srcdir/Tesses.CrossLang.ShellPackage-1.0.0.0-prod.crvm" "$pkgdir/share/Tesses/CrossLang/Tesses.CrossLang.ShellPackage-1.0.0.0-prod.crvm"
|
||||
}
|
||||
|
||||
17
Packaging/Linux/build-arch.sh
Normal file
17
Packaging/Linux/build-arch.sh
Normal file
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
cd /home/build
|
||||
mkdir x86_64
|
||||
cd x86_64
|
||||
cp ../PKGBUILD .
|
||||
makepkg
|
||||
curl --user tesses50:$GITEA_AUTH \
|
||||
--upload-file *.pkg.tar.zst \
|
||||
https://git.tesseslanguage.com/api/packages/tesses50/arch/core
|
||||
cd ..
|
||||
mkdir powerpc
|
||||
cd powerpc
|
||||
cp ../PKGBUILD .
|
||||
CARCH=powerpc CMAKE_TOOLCHAIN=/opt/cross/ppc/toolchain.cmake makepkg
|
||||
curl --user tesses50:$GITEA_AUTH \
|
||||
--upload-file *.pkg.tar.zst \
|
||||
https://git.tesseslanguage.com/api/packages/tesses50/arch/core
|
||||
@@ -947,7 +947,7 @@ namespace Tesses::CrossLang
|
||||
}
|
||||
};
|
||||
|
||||
static TObject Net_Http_MakeRequest(GCList& ls, std::vector<TObject> args)
|
||||
static TObject Net_Http_MakeRequest(GCList& ls, std::vector<TObject> args,TRootEnvironment* env)
|
||||
{
|
||||
auto gc = ls.GetGC();
|
||||
std::string url;
|
||||
@@ -976,6 +976,11 @@ namespace Tesses::CrossLang
|
||||
GetObject(_obj,req.followRedirects);
|
||||
_obj = options->GetValue("TrustedRootCertBundle");
|
||||
GetObject(_obj,req.trusted_root_cert_bundle);
|
||||
if(env->permissions.canRegisterLocalFS)
|
||||
{
|
||||
_obj = options->GetValue("UnixSocket");
|
||||
GetObject(_obj,req.unixSocket);
|
||||
}
|
||||
|
||||
_obj = options->GetValue("RequestHeaders");
|
||||
|
||||
@@ -1486,7 +1491,7 @@ namespace Tesses::CrossLang
|
||||
}
|
||||
return nullptr;
|
||||
});
|
||||
http->DeclareFunction(gc, "MakeRequest", "Create an http request", {"url","$extra"}, Net_Http_MakeRequest);
|
||||
http->DeclareFunction(gc, "MakeRequest", "Create an http request", {"url","$extra"}, [env](GCList& ls, std::vector<TObject> args)->TObject {return Net_Http_MakeRequest(ls,args,env);});
|
||||
http->DeclareFunction(gc, "WebSocketClient", "Create a websocket connection",{"url","headers","conn","$successCB"},Net_Http_WebSocketClient);
|
||||
http->DeclareFunction(gc, "DownloadToString","Return the http file's contents as a string",{"url"},Net_Http_DownloadToString);
|
||||
http->DeclareFunction(gc, "DownloadToStream","Download file to stream",{"url","stream"},Net_Http_DownloadToStream);
|
||||
|
||||
@@ -5152,7 +5152,7 @@ namespace Tesses::CrossLang {
|
||||
{
|
||||
|
||||
|
||||
cse.back()->Push(gc,dict->CallMethod(ls, key, args));
|
||||
cse.back()->Push(gc,dynDict->CallMethod(ls, key, args));
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user