mirror of
https://onedev.site.tesses.net/crosslang
synced 2026-03-26 03:10:24 +00:00
add arch btw
This commit is contained in:
@@ -42,6 +42,31 @@ jobs:
|
|||||||
bash wiibuild.sh
|
bash wiibuild.sh
|
||||||
useTTY: true
|
useTTY: true
|
||||||
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
|
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
|
- !CommandStep
|
||||||
name: Build and Publish Deb Package (Plucky)
|
name: Build and Publish Deb Package (Plucky)
|
||||||
runInContainer: true
|
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();
|
auto gc = ls.GetGC();
|
||||||
std::string url;
|
std::string url;
|
||||||
@@ -976,6 +976,11 @@ namespace Tesses::CrossLang
|
|||||||
GetObject(_obj,req.followRedirects);
|
GetObject(_obj,req.followRedirects);
|
||||||
_obj = options->GetValue("TrustedRootCertBundle");
|
_obj = options->GetValue("TrustedRootCertBundle");
|
||||||
GetObject(_obj,req.trusted_root_cert_bundle);
|
GetObject(_obj,req.trusted_root_cert_bundle);
|
||||||
|
if(env->permissions.canRegisterLocalFS)
|
||||||
|
{
|
||||||
|
_obj = options->GetValue("UnixSocket");
|
||||||
|
GetObject(_obj,req.unixSocket);
|
||||||
|
}
|
||||||
|
|
||||||
_obj = options->GetValue("RequestHeaders");
|
_obj = options->GetValue("RequestHeaders");
|
||||||
|
|
||||||
@@ -1486,7 +1491,7 @@ namespace Tesses::CrossLang
|
|||||||
}
|
}
|
||||||
return nullptr;
|
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, "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, "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);
|
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;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user