doc: update doc test for installation instructions

This commit is contained in:
Li Jie
2025-02-13 16:13:50 +08:00
parent 49f2f0dbfd
commit 3a2d24d7cc
5 changed files with 108 additions and 11 deletions

View File

@@ -29,7 +29,7 @@ jobs:
with:
args: README.md
doc_test:
remote_install:
strategy:
matrix:
os:
@@ -58,7 +58,42 @@ jobs:
set -x
source doc/_readme/scripts/install_ubuntu.sh
- name: Install llgo
- name: Test doc code blocks
run: |
set -e
set -x
source doc/_readme/scripts/run.sh
local_install:
strategy:
matrix:
os:
- macos-latest
- ubuntu-24.04
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.23'
- name: Install dependencies on macOS
if: startsWith(matrix.os, 'macos')
run: |
set -e
set -x
source doc/_readme/scripts/install_macos.sh
- name: Install dependencies on Ubuntu
if: startsWith(matrix.os, 'ubuntu')
run: |
set -e
set -x
source doc/_readme/scripts/install_ubuntu.sh
- name: Install llgo with tools
run: |
set -e
set -x
@@ -79,3 +114,52 @@ jobs:
set -x
source doc/_readme/scripts/run.sh
local_install_full:
strategy:
matrix:
os:
- macos-latest
- ubuntu-24.04
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.23'
- name: Install dependencies on macOS
if: startsWith(matrix.os, 'macos')
run: |
set -e
set -x
source doc/_readme/scripts/install_macos.sh
- name: Install dependencies on Ubuntu
if: startsWith(matrix.os, 'ubuntu')
run: |
set -e
set -x
source doc/_readme/scripts/install_ubuntu.sh
- name: Install llgo with tools
run: |
set -e
set -x
git() {
if [ "$1" = "clone" ]; then
# do nothing because we already have the branch
cd ..
else
command git "$@"
fi
}
source doc/_readme/scripts/install_full.sh
echo "LLGO_ROOT=$GITHUB_WORKSPACE" >> $GITHUB_ENV
- name: Test doc code blocks
run: |
set -e
set -x
source doc/_readme/scripts/run.sh

View File

@@ -398,6 +398,15 @@ curl https://raw.githubusercontent.com/goplus/llgo/refs/heads/main/install.sh |
TODO
### Install from source
<!-- embedme doc/_readme/scripts/install_llgo.sh#L2-L1000 -->
```sh
git clone https://github.com/goplus/llgo.git
cd llgo
./install.sh
```
## Development tools
@@ -409,7 +418,7 @@ TODO
How do I generate these tools?
<!-- embedme doc/_readme/scripts/install_llgo.sh#L2-L1000 -->
<!-- embedme doc/_readme/scripts/install_full.sh#L2-L1000 -->
```sh
git clone https://github.com/goplus/llgo.git

View File

@@ -0,0 +1,9 @@
# shellcheck disable=all
git clone https://github.com/goplus/llgo.git
cd llgo/compiler
go install -v ./cmd/...
go install -v ./chore/... # compile all tools except pydump
export LLGO_ROOT=$PWD/..
cd ../_xtool
llgo install ./... # compile pydump
go install github.com/goplus/hdq/chore/pysigfetch@v0.8.1 # compile pysigfetch

View File

@@ -1,9 +1,4 @@
# shellcheck disable=all
git clone https://github.com/goplus/llgo.git
cd llgo/compiler
go install -v ./cmd/...
go install -v ./chore/... # compile all tools except pydump
export LLGO_ROOT=$PWD/..
cd ../_xtool
llgo install ./... # compile pydump
go install github.com/goplus/hdq/chore/pysigfetch@v0.8.1 # compile pysigfetch
cd llgo
./install.sh

View File

@@ -4,4 +4,4 @@ wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y llvm-18-dev clang-18 libclang-18-dev lld-18 pkg-config libgc-dev libssl-dev zlib1g-dev libcjson-dev libsqlite3-dev libunwind-dev
sudo apt-get install -y python3.12-dev # optional
curl https://raw.githubusercontent.com/goplus/llgo/refs/heads/main/install.sh | bash
curl https://raw.githubusercontent.com/goplus/llgo/refs/heads/main/install.sh | bash