-
Notifications
You must be signed in to change notification settings - Fork 1
150 lines (132 loc) · 5.29 KB
/
build-linux.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
name: Build linux (Ubuntu-20)
on:
workflow_dispatch:
inputs:
refToBuild:
description: 'Branch, tag or commit SHA1 to build'
default: ''
required: false
type: string
refToHelpAsset:
description: 'Run-ID of build with help-ehf asset (not used)'
default: ''
required: false
type: string
jobs:
build:
runs-on: ubuntu-20.04
name: Build on ${{ matrix.distro }} ${{ matrix.arch }}
steps:
- name: Install dependencies
run: |
echo INFO: uname -a
uname -a
echo INSTALL: OpenSSL@3.0
/home/linuxbrew/.linuxbrew/bin/brew install openssl@3.0
echo INFO: OpenSSL 1
ls /home/linuxbrew/.linuxbrew/opt/openssl@3.0/
echo INFO: OpenSSL 2
ls /home/linuxbrew/.linuxbrew/opt/openssl@3.0/lib
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ inputs.refToBuild }}
- name: Compile nroff tools
run: |
mkdir downloads
mkdir packages
cd ./nroff
make
- name: Compile linux mec
run: |
cd ./microemacs/src
./build.sh -t c -v OPENSSLPATH=/home/linuxbrew/.linuxbrew/opt/openssl@3.0/include
- name: Compile linux mew
run: |
cd ./microemacs/src
./build.sh -t w -v OPENSSLPATH=/home/linuxbrew/.linuxbrew/opt/openssl@3.0/include
- name: Create linux binaries download
run: |
cd ./microemacs/bin
mv linux5-intel64-gcc9 linux5-intel64
rm ./.gitignore
cd ..
mv release_readme.txt readme.txt
export MEVER=`./bin/linux5-intel64/mec -p @contribs/ver.emf`
zip -r ../downloads/Jasspa_MicroEmacs_${MEVER}_bin_linux_binaries bin COPYING.txt readme.txt
- name: Create linux mesc
run: |
export MEVER=`./microemacs/bin/linux5-intel64/mec -p @microemacs/contribs/ver.emf`
cd ./microemacs/mesingle
rm -rf bin/linux5-intel64
mkdir -p bin/linux5-intel64
../bin/linux5-intel64/mec -p "@mesgen" -f -p ../bin/linux5-intel64/mec -t ../bin/linux5-intel64/tfs -o bin/linux5-intel64/mesc
cp ../COPYING.txt ./
cp ../readme.txt ./
zip -r ../../downloads/Jasspa_MicroEmacs_${MEVER}_abin_linux_mesc bin COPYING.txt readme.txt
- name: Create linux mesw
run: |
export MEVER=`./microemacs/bin/linux5-intel64/mec -p @microemacs/contribs/ver.emf`
cd ./microemacs/mesingle
rm -rf bin/linux5-intel64
mkdir -p bin/linux5-intel64
../bin/linux5-intel64/mec -p "@mesgen" -f -p ../bin/linux5-intel64/mew -t ../bin/linux5-intel64/tfs -o bin/linux5-intel64/mesw
zip -r ../../downloads/Jasspa_MicroEmacs_${MEVER}_abin_linux_mesw bin COPYING.txt readme.txt
- name: Create linux OpenSSL download
run: |
cd ./microemacs/
export MEVER=`./bin/linux5-intel64/mec -p @contribs/ver.emf`
rm -rf tfs
mkdir -p tfs/bin/linux5-intel64
cd tfs/bin/linux5-intel64
cp /home/linuxbrew/.linuxbrew/opt/openssl@3.0/lib/libcrypto.so .
cp /home/linuxbrew/.linuxbrew/opt/openssl@3.0/lib/libssl.so .
cp /home/linuxbrew/.linuxbrew/opt/openssl@3.0/LICENSE.txt .
cp /home/linuxbrew/.linuxbrew/opt/openssl@3.0/README.md .
cd ../..
zip -r ../../downloads/Jasspa_MicroEmacs_${MEVER}_bin_linux_openssl bin
cd ..
./bin/linux5-intel64/tfs -o ../packages/Jasspa_MicroEmacs_${MEVER}_openssl_linux5_intel64.tfs -a ./mesingle/tfs_hd tfs
- name: Generate docs
run: |
export PATH=`pwd`/microemacs/bin/linux5-intel64:`pwd`/nroff/bin/linux:$PATH
export MEPATH=`pwd`/microemacs/macros
export MEVER=`mec -p @microemacs/contribs/ver.emf`
cd ./microemacs/doc
make me.ehf
rm -rf tfs
mkdir -p tfs/macros
cp me.ehf tfs/macros
cd tfs
cp ../../COPYING.txt ./
cp ../../readme.txt ./
zip -r ../../../downloads/Jasspa_MicroEmacs_${MEVER}_help_ehf macros COPYING.txt readme.txt
cd ..
../bin/linux5-intel64/tfs -o ../../packages/Jasspa_MicroEmacs_${MEVER}_hlpehf.tfs -a ../mesingle/tfs_hd tfs
- name: Generate macros
run: |
cd ./microemacs/
export MEVER=`./bin/linux5-intel64/mec -p @contribs/ver.emf`
cd macros
make -f Makefile release
cd ../release/jasspa/
cp ../../COPYING.txt ./
cp ../../readme.txt ./
zip -r ../../../downloads/Jasspa_MicroEmacs_${MEVER}_macros macros COPYING.txt readme.txt
cd ..
../bin/linux5-intel64/tfs -o ../../packages/Jasspa_MicroEmacs_${MEVER}_macros.tfs -a ../mesingle/tfs_hd jasspa
- name: Upload linux downloads
uses: actions/upload-artifact@v4
with:
name: linux-downloads
path: downloads
- name: Upload linux packages
uses: actions/upload-artifact@v4
with:
name: linux-packages
path: packages
- name: Upload help ehf
uses: actions/upload-artifact@v4
with:
name: help-ehf
path: microemacs/doc/me.ehf