Skip to content

Commit

Permalink
Build Tk against Tcl's disabletcl8api branch
Browse files Browse the repository at this point in the history
  • Loading branch information
jan.nijtmans committed Apr 25, 2023
1 parent c0f6ddc commit 130539e
Show file tree
Hide file tree
Showing 7 changed files with 2 additions and 1,075 deletions.
189 changes: 0 additions & 189 deletions .github/workflows/linux-build.yml
Original file line number Diff line number Diff line change
@@ -1,189 +0,0 @@
name: Linux
on: [push]
permissions:
contents: read
defaults:
run:
shell: bash
working-directory: tk/unix
env:
ERROR_ON_FAILURES: 1
jobs:
build:
runs-on: ubuntu-22.04
strategy:
matrix:
compiler:
- "gcc"
- "clang"
cfgopt:
- ""
- "CFLAGS=-DTK_NO_DEPRECATED=1"
- "--disable-shared"
- "--disable-xft"
- "--disable-xss"
- "--enable-symbols"
steps:
- name: Checkout
uses: actions/checkout@v3
with:
path: tk
- name: Checkout Tcl
uses: actions/checkout@v3
with:
repository: tcltk/tcl
ref: core-8-branch
path: tcl
- name: Setup Environment (compiler=${{ matrix.compiler }})
run: |
sudo apt-get install libxss-dev
mkdir "$HOME/install dir"
touch tk/doc/man.macros tk/generic/tkStubInit.c
echo "CFGOPT=$CFGOPT" >> $GITHUB_ENV
echo "CC=$COMPILER" >> $GITHUB_ENV
echo "TOOL_DIR=$(cd tcl/tools;pwd)" >> $GITHUB_ENV
echo "BUILD_CONFIG_ID=$OPTS" >> $GITHUB_ENV
working-directory: "."
env:
CFGOPT: ${{ matrix.cfgopt }}
COMPILER: ${{ matrix.compiler }}
OPTS: ${{ matrix.compiler }}${{ matrix.cfgopt }}
- name: Configure and Build Tcl
run: |
./configure $CFGOPT "--prefix=$HOME/install dir" || {
cat config.log
echo "::warning::Failure during Tcl Configure"
exit 1
}
make all install || {
echo "::warning::Failure during Tcl Build"
exit 1
}
echo "TCL_CONFIG_PATH=`pwd`" >> $GITHUB_ENV
working-directory: tcl/unix
- name: Configure (opts=${{ matrix.cfgopt }})
run: |
./configure $CFGOPT --with-tcl=$TCL_CONFIG_PATH "--prefix=$HOME/install dir" || {
cat config.log
echo "::error::Failure during Configure"
exit 1
}
- name: Build
run: |
make binaries libraries || {
echo "::error::Failure during Build"
exit 1
}
- name: Build Test Harness
run: |
make tktest || {
echo "::error::Failure during Build"
exit 1
}
- name: Test-Drive Installation
run: |
make install || {
echo "::error::Failure during Install"
exit 1
}
- name: Create Distribution Package
run: |
make dist || {
echo "::error::Failure during Distribute"
exit 1
}
- name: Convert Documentation to HTML
run: |
make html-tk TOOL_DIR=$TOOL_DIR || {
echo "::error::Failure during Distribute"
exit 1
}
- name: Discover Version ID
if: ${{ env.BUILD_CONFIG_ID == 'gcc' }}
run: |
cd /tmp/dist
echo "VERSION=`ls -d tk* | sed 's/tk//'`" >> $GITHUB_ENV
- name: Upload Source Distribution
if: ${{ env.BUILD_CONFIG_ID == 'gcc' }}
uses: actions/upload-artifact@v3
with:
name: Tk ${{ env.VERSION }} Source distribution (snapshot)
path: |
/tmp/dist/tk*
!/tmp/dist/tk*/html/**
- name: Upload Documentation Distribution
if: ${{ env.BUILD_CONFIG_ID == 'gcc' }}
uses: actions/upload-artifact@v3
with:
name: Tk ${{ env.VERSION }} HTML documentation (snapshot)
path: /tmp/dist/tk*/html
test:
runs-on: ubuntu-22.04
strategy:
matrix:
compiler:
- "gcc"
cfgopt:
- ""
- "--disable-xft"
- "--enable-symbols"
steps:
- name: Checkout
uses: actions/checkout@v3
with:
path: tk
- name: Checkout Tcl
uses: actions/checkout@v3
with:
repository: tcltk/tcl
ref: core-8-branch
path: tcl
- name: Setup Environment (compiler=${{ matrix.compiler }})
run: |
sudo apt-get install libxss-dev xvfb libicu-dev
mkdir "$HOME/install dir"
touch tk/doc/man.macros tk/generic/tkStubInit.c
echo "CFGOPT=$CFGOPT" >> $GITHUB_ENV
echo "CC=$COMPILER" >> $GITHUB_ENV
working-directory: "."
env:
CFGOPT: ${{ matrix.cfgopt }}
COMPILER: ${{ matrix.compiler }}
- name: Configure and Build Tcl
run: |
./configure $CFGOPT "--prefix=$HOME/install dir" || {
cat config.log
echo "::warning::Failure during Tcl Configure"
exit 1
}
make all install || {
echo "::warning::Failure during Tcl Build"
exit 1
}
echo "TCL_CONFIG_PATH=`pwd`" >> $GITHUB_ENV
working-directory: tcl/unix
- name: Configure ${{ matrix.cfgopt }}
run: |
./configure $CFGOPT --with-tcl=$TCL_CONFIG_PATH "--prefix=$HOME/install dir" || {
cat config.log
echo "::error::Failure during Configure"
exit 1
}
- name: Build
run: |
make binaries libraries tktest || {
echo "::error::Failure during Build"
exit 1
}
- name: Run Tests
run: |
xvfb-run --auto-servernum make test-classic | tee out-classic.txt
xvfb-run --auto-servernum make test-ttk | tee out-ttk.txt
grep -q "Failed 0" out-classic.txt || {
echo "::error::Failure during Test"
exit 1
}
grep -q "Failed 0" out-ttk.txt || {
echo "::error::Failure during Test"
exit 1
}
170 changes: 0 additions & 170 deletions .github/workflows/linux-with-tcl86-build.yml
Original file line number Diff line number Diff line change
@@ -1,170 +0,0 @@
name: Linux (with Tcl 8.6)
on: [push]
permissions:
contents: read
defaults:
run:
shell: bash
working-directory: tk/unix
env:
ERROR_ON_FAILURES: 1
jobs:
build:
runs-on: ubuntu-22.04
strategy:
matrix:
compiler:
- "gcc"
- "clang"
cfgopt:
- ""
- "CFLAGS=-DTK_NO_DEPRECATED=1"
- "--disable-shared"
- "--disable-xft"
- "--disable-xss"
- "--enable-symbols"
steps:
- name: Checkout
uses: actions/checkout@v3
with:
path: tk
- name: Checkout Tcl
uses: actions/checkout@v3
with:
repository: tcltk/tcl
ref: core-8-6-branch
path: tcl
- name: Setup Environment (compiler=${{ matrix.compiler }})
run: |
sudo apt-get install libxss-dev
mkdir "$HOME/install dir"
touch tk/doc/man.macros tk/generic/tkStubInit.c
echo "CFGOPT=$CFGOPT" >> $GITHUB_ENV
echo "CC=$COMPILER" >> $GITHUB_ENV
echo "TOOL_DIR=$(cd tcl/tools;pwd)" >> $GITHUB_ENV
echo "BUILD_CONFIG_ID=$OPTS" >> $GITHUB_ENV
working-directory: "."
env:
CFGOPT: ${{ matrix.cfgopt }}
COMPILER: ${{ matrix.compiler }}
OPTS: ${{ matrix.compiler }}${{ matrix.cfgopt }}
- name: Configure and Build Tcl
run: |
./configure $CFGOPT "--prefix=$HOME/install dir" || {
cat config.log
echo "::warning::Failure during Tcl Configure"
exit 1
}
make all install || {
echo "::warning::Failure during Tcl Build"
exit 1
}
echo "TCL_CONFIG_PATH=`pwd`" >> $GITHUB_ENV
working-directory: tcl/unix
- name: Configure (opts=${{ matrix.cfgopt }})
run: |
./configure $CFGOPT --with-tcl=$TCL_CONFIG_PATH --disable-zipfs "--prefix=$HOME/install dir" || {
cat config.log
echo "::error::Failure during Configure"
exit 1
}
- name: Build
run: |
make binaries libraries || {
echo "::error::Failure during Build"
exit 1
}
- name: Build Test Harness
run: |
make tktest || {
echo "::error::Failure during Build"
exit 1
}
- name: Test-Drive Installation
run: |
make install || {
echo "::error::Failure during Install"
exit 1
}
- name: Create Distribution Package
run: |
make dist || {
echo "::error::Failure during Distribute"
exit 1
}
- name: Convert Documentation to HTML
run: |
make html-tk TOOL_DIR=$TOOL_DIR || {
echo "::error::Failure during Distribute"
exit 1
}
test:
runs-on: ubuntu-22.04
strategy:
matrix:
compiler:
- "gcc"
cfgopt:
- ""
- "--disable-xft"
- "--enable-symbols"
steps:
- name: Checkout
uses: actions/checkout@v3
with:
path: tk
- name: Checkout Tcl
uses: actions/checkout@v3
with:
repository: tcltk/tcl
ref: core-8-6-branch
path: tcl
- name: Setup Environment (compiler=${{ matrix.compiler }})
run: |
sudo apt-get install libxss-dev xvfb libicu-dev
mkdir "$HOME/install dir"
touch tk/doc/man.macros tk/generic/tkStubInit.c
echo "CFGOPT=$CFGOPT" >> $GITHUB_ENV
echo "CC=$COMPILER" >> $GITHUB_ENV
working-directory: "."
env:
CFGOPT: ${{ matrix.cfgopt }}
COMPILER: ${{ matrix.compiler }}
- name: Configure and Build Tcl
run: |
./configure $CFGOPT "--prefix=$HOME/install dir" || {
cat config.log
echo "::warning::Failure during Tcl Configure"
exit 1
}
make all install || {
echo "::warning::Failure during Tcl Build"
exit 1
}
echo "TCL_CONFIG_PATH=`pwd`" >> $GITHUB_ENV
working-directory: tcl/unix
- name: Configure ${{ matrix.cfgopt }}
run: |
./configure $CFGOPT --with-tcl=$TCL_CONFIG_PATH "--prefix=$HOME/install dir" || {
cat config.log
echo "::error::Failure during Configure"
exit 1
}
- name: Build
run: |
make binaries libraries tktest || {
echo "::error::Failure during Build"
exit 1
}
- name: Run Tests
run: |
xvfb-run --auto-servernum make test-classic | tee out-classic.txt
xvfb-run --auto-servernum make test-ttk | tee out-ttk.txt
grep -q "Failed 0" out-classic.txt || {
echo "::error::Failure during Test"
exit 1
}
grep -q "Failed 0" out-ttk.txt || {
echo "::error::Failure during Test"
exit 1
}
4 changes: 2 additions & 2 deletions .github/workflows/linux-with-tcl9-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
uses: actions/checkout@v3
with:
repository: tcltk/tcl
ref: main
ref: disabletcl8api
path: tcl
- name: Setup Environment (compiler=${{ matrix.compiler }})
run: |
Expand Down Expand Up @@ -117,7 +117,7 @@ jobs:
uses: actions/checkout@v3
with:
repository: tcltk/tcl
ref: main
ref: disabletcl8api
path: tcl
- name: Setup Environment (compiler=${{ matrix.compiler }})
run: |
Expand Down
Loading

0 comments on commit 130539e

Please sign in to comment.