Skip to content

Commit d3a0e33

Browse files
committed
Repository reset
1 parent 87b72bf commit d3a0e33

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+24759
-862
lines changed

.github/workflows/linux.yml

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ on: [push, pull_request]
55
jobs:
66
build:
77

8-
runs-on: ubuntu-20.04
8+
runs-on: ubuntu-24.04
99
timeout-minutes: 30
1010

1111
steps:
@@ -35,21 +35,3 @@ jobs:
3535
name: FriCAS-linux-x86_64-binary
3636
path: FriCAS-linux-x86_64-${{ github.sha }}.tar.bz2
3737

38-
- name: Upload to nightly release
39-
if: ${{ github.event_name == 'push' && ( github.event.ref == 'refs/heads/master' || github.ref_type == 'tag' ) && github.repository == 'fricas/fricas' }}
40-
## RELEASE_ID is:
41-
## `curl https://api.github.com/${REPO_URL}/tags/nightly | jq .id`
42-
run: |
43-
export REPO_URL=repos/fricas/fricas-nightly-builds/releases
44-
export RELEASE_ID=74905307
45-
export TIMESTAMP=$(date +%Y-%m-%dT%H.%M)
46-
export SHA=$(echo ${{ github.sha }} | cut -c 1-8)
47-
export FILENAME1=FriCAS-${TIMESTAMP}-linux-x86_64-${SHA}.tar.bz2
48-
export FILENAME2=fricas-${GITHUB_REF_NAME}-linux-x86_64.tar.bz2
49-
export FILENAME=$(test "$GITHUB_REF_TYPE" != "tag" && echo $FILENAME1 || echo $FILENAME2)
50-
export URL=https://uploads.github.com/${REPO_URL}/${RELEASE_ID}/assets
51-
curl -v -X POST -H "Accept: application/vnd.github+json" \
52-
-H "Authorization: token ${{ secrets.releasetoken }}" \
53-
"${URL}?name=${FILENAME}" \
54-
--data-binary "@FriCAS-linux-x86_64-${{ github.sha }}.tar.bz2" \
55-
-H "Content-Type: application/x-bzip2" || true

.github/workflows/linuxJulia_ccl.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: FriCAS CI on x64 Linux (with Julia support - Clozure CL based)
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
8+
runs-on: ubuntu-latest
9+
timeout-minutes: 30
10+
env:
11+
JULIA_VERSION: '1.11.2'
12+
steps:
13+
- uses: actions/checkout@v4
14+
- name: install dependencies
15+
run: |
16+
sudo apt-get update
17+
sudo apt-get install libgmp-dev libxpm-dev python3 python3-sphinx
18+
- name: download roswell
19+
run: wget -c https://github.com/roswell/roswell/releases/download/v22.12.14.113/roswell_22.12.14.113-1_amd64.deb
20+
- name: install roswell and dependencies
21+
run: sudo dpkg -i roswell_22.12.14.113-1_amd64.deb && ros install ccl-bin && ros install hunchentoot && ros install queues
22+
- name: Download and install Julia
23+
run: |
24+
wget https://julialang-s3.julialang.org/bin/linux/x64/1.11/julia-${JULIA_VERSION}-linux-x86_64.tar.gz
25+
tar zxf julia-${JULIA_VERSION}-linux-x86_64.tar.gz
26+
sudo cp -rf julia-${JULIA_VERSION}/* /usr/local/
27+
sudo ldconfig
28+
- name: install Julia libraries
29+
run: |
30+
julia -e "import Pkg;Pkg.add(\"Nemo\");Pkg.add(\"Suppressor\");Pkg.add(\"SpecialFunctions\")"
31+
- name: configure
32+
run: |
33+
./configure --with-lisp='ros run' --enable-gmp --enable-julia --enable-hunchentoot || cat config.log
34+
- name: make
35+
run: make -j4 --output-sync
36+
- name: make html doc
37+
run: make -j4 --output-sync htmldoc
38+
- name: make check
39+
run: make -j4 check
40+
- name: Create artifact archives
41+
run: |
42+
rm -r target/*/src
43+
mkdir jlfricas && mv target jlfricas/
44+
tar -cjf jlFriCAS-linux-x86_64-${{ github.sha }}.tar.bz2 jlfricas/
45+
- name: Upload Linux binary
46+
uses: actions/upload-artifact@v4
47+
with:
48+
name: jlFriCAS-linux-x86_64-binary
49+
path: jlFriCAS-linux-x86_64-${{ github.sha }}.tar.bz2

.github/workflows/linuxJulia_sbcl.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: FriCAS CI on x64 Linux (with Julia support - SBCL based)
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
8+
runs-on: ubuntu-latest
9+
timeout-minutes: 30
10+
steps:
11+
- uses: actions/checkout@v4
12+
- uses: julia-actions/setup-julia@latest
13+
- name: install dependencies
14+
run: |
15+
sudo apt-get update
16+
sudo apt-get install build-essential debhelper sbcl libgmp-dev libxpm-dev cl-hunchentoot python3 python3-sphinx fakeroot dpkg-dev
17+
wget https://github.com/gvanuxem/aldor/releases/download/20241216/aldor_1.4.0+20241216_amd64.deb
18+
sudo dpkg -i aldor_1.4.0+20241216_amd64.deb
19+
# - name: Download and install Julia
20+
# run: |
21+
# wget https://julialang-s3.julialang.org/bin/linux/x64/1.11/julia-${JULIA_VERSION}-linux-x86_64.tar.gz
22+
# tar zxf julia-${JULIA_VERSION}-linux-x86_64.tar.gz
23+
# sudo cp -rf julia-${JULIA_VERSION}/* /usr/local/
24+
# sudo ldconfig
25+
- name: install Julia libraries
26+
run: |
27+
julia -e "import Pkg;Pkg.add(\"Nemo\");Pkg.add(\"Suppressor\");Pkg.add(\"SpecialFunctions\")"
28+
- name: make and check packages
29+
run: |
30+
dpkg-buildpackage -b -us -uc
31+
mv ../jlfricas_1.3.12-julia-20241216_amd64.deb .
32+
- name: Create artifact archives
33+
run: |
34+
rm -r target/*/src
35+
mkdir jlfricas && mv target jlfricas/
36+
tar -cjf jlFriCAS-linux-x86_64-${{ github.sha }}.tar.bz2 jlfricas/
37+
- name: Upload Linux binary
38+
uses: actions/upload-artifact@v4
39+
with:
40+
name: jlFriCAS-linux-x86_64-binary
41+
path: |
42+
jlFriCAS-linux-x86_64-${{ github.sha }}.tar.bz2
43+
jlfricas_1.3.12-julia-20241216_amd64.deb

.github/workflows/macOS-ccl.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
run: |
1616
brew install clozure-cl
1717
mkdir ../build && cd ../build
18-
../fricas/configure --with-lisp=ccl64 --with-gmp=`brew --prefix` || cat config.log
18+
../jlfricas/configure --with-lisp=ccl64 --with-gmp=`brew --prefix` || cat config.log
1919
2020
- name: make
2121
run: cd ../build && make -j4
@@ -31,7 +31,7 @@ jobs:
3131
cp -v `brew list gmp | grep libgmp.10.dylib` FriCAS.app/Contents/Resources/usr/local/lib/fricas/target/*/lib/
3232
## reduce chance of error caused by "hdiutil: Resource busy"
3333
make dist-macos-dmg || make dist-macos-dmg
34-
mv FriCAS.dmg ../fricas/FriCAS-macOS-CCL-x86_64-${{ github.sha }}.dmg
34+
mv FriCAS.dmg ../jlfricas/FriCAS-macOS-CCL-x86_64-${{ github.sha }}.dmg
3535
3636
- name: Upload macOS binary
3737
uses: actions/upload-artifact@v4

.github/workflows/macOS-ecl.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
- name: configure
2323
run: |
2424
mkdir ../build && cd ../build
25-
../fricas/configure --with-lisp=ecl || cat config.log
25+
../jlfricas/configure --with-lisp=ecl || cat config.log
2626
2727
- name: make
2828
run: cd ../build && make -j4
@@ -38,7 +38,7 @@ jobs:
3838
cp -v `brew list gmp | grep libgmp.10.dylib` FriCAS.app/Contents/Resources/usr/local/lib/fricas/target/*/lib/
3939
## reduce chance of error caused by "hdiutil: Resource busy"
4040
make dist-macos-dmg || make dist-macos-dmg
41-
mv FriCAS.dmg ../fricas/FriCAS-macOS-ECL-${ARCH}-${{ github.sha }}.dmg
41+
mv FriCAS.dmg ../jlfricas/FriCAS-macOS-ECL-${ARCH}-${{ github.sha }}.dmg
4242
4343
- name: Upload macOS binary
4444
uses: actions/upload-artifact@v4

.github/workflows/macOS.yml

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
- name: configure
2727
run: |
2828
mkdir ../build && cd ../build
29-
../fricas/configure --with-lisp=sbcl --with-gmp=`brew --prefix` || cat config.log
29+
../jlfricas/configure --with-lisp=sbcl --with-gmp=`brew --prefix` || cat config.log
3030
3131
- name: make
3232
run: cd ../build && make -j4
@@ -42,29 +42,11 @@ jobs:
4242
cp -v `brew list gmp | grep libgmp.10.dylib` FriCAS.app/Contents/Resources/usr/local/lib/fricas/target/*/lib/
4343
## reduce chance of error caused by "hdiutil: Resource busy"
4444
make dist-macos-dmg || make dist-macos-dmg
45-
mv FriCAS.dmg ../fricas/FriCAS-macOS-${ARCH}-${{ github.sha }}.dmg
45+
mv FriCAS.dmg ../jlfricas/FriCAS-macOS-${ARCH}-${{ github.sha }}.dmg
4646
4747
- name: Upload macOS binary
4848
uses: actions/upload-artifact@v4
4949
with:
5050
name: FriCAS-macOS-${{ env.ARCH }}-binary
5151
path: FriCAS-macOS-${{ env.ARCH }}-${{ github.sha }}.dmg
5252

53-
- name: Upload to nightly release
54-
if: ${{ github.event_name == 'push' && ( github.event.ref == 'refs/heads/master' || github.ref_type == 'tag' ) && github.repository == 'fricas/fricas' }}
55-
## RELEASE_ID is:
56-
## `curl https://api.github.com/${REPO_URL}/tags/nightly | jq .id`
57-
run: |
58-
export REPO_URL=repos/fricas/fricas-nightly-builds/releases
59-
export RELEASE_ID=74905307
60-
export TIMESTAMP=$(date +%Y-%m-%dT%H.%M)
61-
export SHA=$(echo ${{ github.sha }} | cut -c 1-8)
62-
export FILENAME1=FriCAS-${TIMESTAMP}-macOS-${ARCH}-${SHA}-unsigned.dmg
63-
export FILENAME2=fricas-${GITHUB_REF_NAME}-macOS-${ARCH}-unsigned.dmg
64-
export FILENAME=$(test "$GITHUB_REF_TYPE" != "tag" && echo $FILENAME1 || echo $FILENAME2)
65-
export URL=https://uploads.github.com/${REPO_URL}/${RELEASE_ID}/assets
66-
curl -v -X POST -H "Accept: application/vnd.github+json" \
67-
-H "Authorization: token ${{ secrets.releasetoken }}" \
68-
"${URL}?name=${FILENAME}" \
69-
--data-binary "@FriCAS-macOS-${ARCH}-${{ github.sha }}.dmg" \
70-
-H "Content-Type: application/x-apple-diskimage" || true

.github/workflows/macOSJulia_sbcl.yml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: FriCAS CI on macOS (with Julia support - SBCL based)
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
8+
strategy:
9+
fail-fast: false
10+
matrix:
11+
os: [macos-13, macos-14]
12+
runs-on: ${{ matrix.os }}
13+
timeout-minutes: 30
14+
env:
15+
SBCL_VER: ${{ matrix.os == 'macos-13' && '2.2.9' || '2.4.0' }}
16+
ARCH: ${{ matrix.os == 'macos-13' && 'x86-64' || 'arm64' }}
17+
18+
steps:
19+
- uses: actions/checkout@v4
20+
- uses: julia-actions/setup-julia@latest
21+
- name: download and install prerequities
22+
run: |
23+
wget https://downloads.sourceforge.net/project/sbcl/sbcl/${SBCL_VER}/sbcl-${SBCL_VER}-${ARCH}-darwin-binary.tar.bz2
24+
tar xvf sbcl-${SBCL_VER}-${ARCH}-darwin-binary.tar.bz2
25+
cd sbcl-${SBCL_VER}-${ARCH}-darwin && sudo ./install.sh
26+
27+
- name: install Julia libraries
28+
run: |
29+
julia -e "import Pkg;Pkg.add(\"Nemo\");Pkg.add(\"Suppressor\");Pkg.add(\"SpecialFunctions\")"
30+
31+
- name: configure
32+
run: |
33+
mkdir ../build && cd ../build
34+
../jlfricas/configure --with-lisp=sbcl --with-gmp=`brew --prefix` --enable-julia --enable-mathlink || cat config.log
35+
36+
- name: make
37+
run: cd ../build && make -j4
38+
39+
- name: make check
40+
run: cd ../build && make check -j4
41+
42+
- name: Create artifact archives
43+
run: |
44+
cd ../build
45+
test "$GITHUB_REF_TYPE" != "tag" && rm -r target/*/src
46+
make dist-macos
47+
cp -v `brew list gmp | grep libgmp.10.dylib` FriCAS.app/Contents/Resources/usr/local/lib/fricas/target/*/lib/
48+
## reduce chance of error caused by "hdiutil: Resource busy"
49+
make dist-macos-dmg || make dist-macos-dmg
50+
mv FriCAS.dmg ../jlfricas/FriCAS-macOS-${ARCH}-${{ github.sha }}.dmg
51+
52+
- name: Upload macOS binary
53+
uses: actions/upload-artifact@v4
54+
with:
55+
name: FriCAS-macOS-${{ env.ARCH }}-binary
56+
path: FriCAS-macOS-${{ env.ARCH }}-${{ github.sha }}.dmg
57+

.github/workflows/windows-ccl.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
mkdir ../build && cd ../build
2323
wget https://github.com/Clozure/ccl/releases/download/v1.13/ccl-1.13-windowsx86.zip
2424
unzip ccl-1.13-windowsx86.zip
25-
../fricas/configure --with-lisp=`pwd`/ccl/wx86cl64.exe --enable-gmp || cat config.log
25+
../jlfricas/configure --with-lisp=`pwd`/ccl/wx86cl64.exe --enable-gmp || cat config.log
2626
make -j4 --output-sync
2727
2828
- name: make check

.github/workflows/windows.yml

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
export SBCL_HOME="/c/Program Files/Steel Bank Common Lisp/"
3030
export PATH="$SBCL_HOME":$PATH
3131
mkdir ../build && cd ../build
32-
../fricas/configure --with-lisp=sbcl --enable-gmp || cat config.log
32+
../jlfricas/configure --with-lisp=sbcl --enable-gmp || cat config.log
3333
make -j4 --output-sync
3434
3535
- name: make check
@@ -38,7 +38,7 @@ jobs:
3838
- name: Create artifact archives
3939
run: |
4040
test "$GITHUB_REF_TYPE" != "tag" && rm -r ../build/target/*/src
41-
rm ../build/target/x86_64-w64-mingw32/bin/{fricas,fricas-readline}
41+
rm ../build/target/x86_64-w64-mingw32/bin/fricas
4242
mv ../build/target/x86_64-w64-mingw32 FriCAS-windows-x86_64
4343
cp /ucrt64/bin/libgmp-10.dll FriCAS-windows-x86_64/lib/
4444
zip -r FriCAS-windows-x86_64-${{ github.sha }}.zip FriCAS-windows-x86_64
@@ -49,21 +49,3 @@ jobs:
4949
name: FriCAS-windows-x86_64-binary
5050
path: FriCAS-windows-x86_64-${{ github.sha }}.zip
5151

52-
- name: Upload to nightly release
53-
if: ${{ github.event_name == 'push' && ( github.event.ref == 'refs/heads/master' || github.ref_type == 'tag' ) && github.repository == 'fricas/fricas' }}
54-
## RELEASE_ID is:
55-
## `curl https://api.github.com/${REPO_URL}/tags/nightly | jq .id`
56-
run: |
57-
export REPO_URL=repos/fricas/fricas-nightly-builds/releases
58-
export RELEASE_ID=74905307
59-
export TIMESTAMP=$(date +%Y-%m-%dT%H.%M)
60-
export SHA=$(echo ${{ github.sha }} | cut -c 1-8)
61-
export FILENAME1=FriCAS-${TIMESTAMP}-windows-x86_64-${SHA}.zip
62-
export FILENAME2=fricas-${GITHUB_REF_NAME}-windows-x64.zip
63-
export FILENAME=$(test "$GITHUB_REF_TYPE" != "tag" && echo $FILENAME1 || echo $FILENAME2)
64-
export URL=https://uploads.github.com/${REPO_URL}/${RELEASE_ID}/assets
65-
curl -v -X POST -H "Accept: application/vnd.github+json" \
66-
-H "Authorization: token ${{ secrets.releasetoken }}" \
67-
"${URL}?name=${FILENAME}" \
68-
--data-binary "@FriCAS-windows-x86_64-${{ github.sha }}.zip" \
69-
-H "Content-Type: application/zip" || true
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: FriCAS CI on x64 Windows (with Julia support - SBCL based)
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
8+
runs-on: windows-latest
9+
timeout-minutes: 30
10+
env:
11+
SBCL_VER: 2.4.9
12+
defaults:
13+
run:
14+
shell: msys2 {0}
15+
16+
steps:
17+
- uses: msys2/setup-msys2@v2
18+
with:
19+
install: make mingw-w64-x86_64-gcc mingw-w64-x86_64-gmp gmp-devel unzip zip
20+
- name: download and install SBCL
21+
run: |
22+
wget https://downloads.sourceforge.net/project/sbcl/sbcl/${SBCL_VER}/sbcl-${SBCL_VER}-x86-64-windows-binary.msi
23+
msiexec -i sbcl-${SBCL_VER}-x86-64-windows-binary.msi -passive
24+
- name: download and install Julia
25+
run: |
26+
wget https://julialang-s3.julialang.org/bin/winnt/x64/1.11/julia-1.11.2-win64.zip
27+
unzip julia-1.11.2-win64.zip
28+
cp -rf julia-1.11.2/* /usr/local/
29+
- name: install Julia libraries
30+
run: julia -e "import Pkg;Pkg.add(\"Nemo\");Pkg.add(\"Suppressor\");Pkg.add(\"SpecialFunctions\")"
31+
- uses: actions/checkout@v4
32+
- name: configure and make
33+
run: |
34+
cp -R "/c/Program Files/Steel Bank Common Lisp" /usr/local/share/sbcl
35+
export SBCL_HOME=/usr/local/share/sbcl
36+
export PATH=$SBCL_HOME:$PATH
37+
mkdir ../build && cd ../build
38+
../jlfricas/configure --enable-gmp --enable-julia --enable-mathlink || cat config.log
39+
make -j2 --output-sync
40+
- name: make check
41+
run: cd ../build && make check -j2 --output-sync
42+
- name: Create artifact archives
43+
run: |
44+
test "$GITHUB_REF_TYPE" != "tag" && rm -r ../build/target/*/src
45+
rm ../build/target/x86_64-w64-mingw32/bin/fricas
46+
mv ../build/target/x86_64-w64-mingw32 jlFriCAS-windows-x86_64
47+
cp /mingw64/bin/libgmp-10.dll jlFriCAS-windows-x86_64/lib/
48+
zip -r jlFriCAS-windows-x86_64-${{ github.sha }}.zip jlFriCAS-windows-x86_64
49+
- name: Upload Windows binary
50+
uses: actions/upload-artifact@v4
51+
with:
52+
name: jlFriCAS-windows-x86_64-binary
53+
path: jlFriCAS-windows-x86_64-${{ github.sha }}.zip

.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,14 @@
44
*.DAASE/
55
*.erlib/
66
*.fasl
7+
*.lx64fsl
78
*.NRLIB/
89
*.o
10+
*.output
11+
*.data
12+
*.fn
13+
*.dat
14+
*.KAF
915

1016
build/
1117

@@ -123,4 +129,8 @@ src/lisp/num_gmpx.lisp
123129
stamp
124130
stamp-*
125131

132+
src/input/*.asy
133+
src/input/*.lsp
134+
126135
target/
136+
.vscode/

0 commit comments

Comments
 (0)