-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild-executor.txt
181 lines (139 loc) · 6.36 KB
/
build-executor.txt
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
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
This file is a subset of build-oorexx.txt, limited to the build of executor.
Compiler prerequisite:
Your compiler supports C++17.
Tested with Apple clang version 14.0.0 (clang-1400.0.29.202)
Tested with clang+llvm-15.0.3-x86_64-apple-darwin
Tested with clang+llvm-15.0.6-arm64-apple-darwin21.0
Tested under WSL with gcc/g++ GNU 11.4.0
Tested with Microsoft Visual Studio Community 2022 (64-bit) - Version 17.3.6
Shell prerequisite for MacOS:
Works only with bash.
If your shell is zsh, then launch bash from your shell session and follow the instructions.
At the end, you can launch zsh from the bash session, but some libraries (like bsf)
may not work because of SIP. The workaround for bash works only for bash.
The zsh session will inherit the environment variables but NOT the aliases.
Shell prerequisite for Linux:
Works only with bash.
If your shell is not bash, then launch bash from your shell session and follow the instructions.
At the end, you can launch your shell from the bash session, it will inherit the environment
variables but NOT the aliases.
Shell prerequisite for Windows:
Works only with cmd.
--------------------------------------------------------------------------------
# MacOs for arm64 or x86_64
--------------------------------------------------------------------------------
# Remember: the instructions in this section work only with bash.
# If you use another shell (like zsh), then type bash -l
# See the folder setenv/bash for examples of configuration files for bash.
cd <my directory>
mkdir rexx
cd rexx
# Get the sources
git clone https://github.com/jlfaucher/builder.git
mkdir oorexx
cd oorexx
# --depth 1 needed because of error "fetch-pack: invalid index-pack output"
git clone --depth 1 https://github.com/jlfaucher/executor.git
# Initialize the build environment:
# build/<target[.branch]>/d1/d2/.../system-arch/compiler/config
# system-arch is macos-arm64 or macos-x86_64.
. ../builder/scripts/setenv build/executor.master/sandbox/jlf/trunk/macos-arm64/clang/release
# Several aliases are defined to navigate easily in the directories:
alias
# Configure
cdbuild
cmake -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -DCMAKE_INSTALL_PREFIX=$builder_delivery_dir $builder_src_dir
# The binaries are installed in $builder_delivery_dir
make install
# Optional: get the regex package (loaded by ooRexxShell if available)
cdoorexx
svn checkout svn://svn.code.sf.net/p/oorexx/code-0/incubator/regex official/incubator/regex
cdincubator
ln -s ../../official/incubator/regex regex
# Try oorexxshell, see the demos:
# https://jlfaucher.github.io/executor.master/demos/index.html
cdoorexx
oorexxshell
# Next time, when starting from a fresh console:
cd <my directory>/rexx/oorexx
# system-arch is macos-arm64 or macos-x86_64.
. ../builder/scripts/setenv build/executor.master/sandbox/jlf/trunk/macos-arm64/clang/release
--------------------------------------------------------------------------------
# Linux for aarch64 or x86_64
--------------------------------------------------------------------------------
# Remember: the instructions in this section work only with bash.
# If you use another shell (like zsh), then type bash -l
# See the folder setenv/bash for examples of configuration files for bash.
cd <my directory>
mkdir rexx
cd rexx
# Get the sources
git clone https://github.com/jlfaucher/builder.git
mkdir oorexx
cd oorexx
# --depth 1 needed because of error "fetch-pack: invalid index-pack output"
git clone --depth 1 https://github.com/jlfaucher/executor.git
# Initialize the build environment:
# build/<target[.branch]>/d1/d2/.../system-arch/compiler/config
# system-arch is ubuntu-aarch64 or ubuntu-x86_64.
. ../builder/scripts/setenv build/executor.master/sandbox/jlf/trunk/ubuntu-x86_64/gcc/release
# Several aliases are defined to navigate easily in the directories:
alias
# Configure
cdbuild
cmake -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -DCMAKE_INSTALL_PREFIX=$builder_delivery_dir $builder_src_dir
# The binaries are installed in $builder_delivery_dir
make install
# Optional: get the regex package (loaded by ooRexxShell if available)
cdoorexx
svn checkout svn://svn.code.sf.net/p/oorexx/code-0/incubator/regex official/incubator/regex
cdincubator
ln -s ../../official/incubator/regex regex
# Try oorexxshell, see the demos:
# https://jlfaucher.github.io/executor.master/demos/index.html
cdoorexx
oorexxshell
# Next time, when starting from a fresh console:
cd <my directory>/rexx/oorexx
# system-arch is ubuntu-aarch64 or ubuntu-x86_64.
. ../builder/scripts/setenv build/executor.master/sandbox/jlf/trunk/ubuntu-x86_64/gcc/release
--------------------------------------------------------------------------------
:: Windows for arm64 or x86_64
--------------------------------------------------------------------------------
:: Prerequisite
:: - No space in the path to the current directory.
:: - Visual Studio 2022 is installed. See scripts\setenv-cl.bat
:: - (needed?) An SDK is installed: https://developer.microsoft.com/en-us/windows/downloads/sdk-archive
cd <my directory>
mkdir rexx
cd rexx
:: Get the sources
git clone https://github.com/jlfaucher/builder.git
mkdir oorexx
cd oorexx
:: --depth 1 needed because of error "fetch-pack: invalid index-pack output"
git clone --depth 1 https://github.com/jlfaucher/executor.git
:: Initialize the build environment:
:: build/<target[.branch]>/d1/d2/.../system-arch/compiler/config
:: system-arch is windows-arm64 or windows-x86_64.
call ..\builder\scripts\setenv build\executor.master\sandbox\jlf\trunk\windows-x86_64\cl\release
:: Several macros are defined to navigate easily in the directories:
doskey /macros
:: Configure
cdbuild
cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE% -DCMAKE_INSTALL_PREFIX=%builder_delivery_dir% %builder_src_dir%
:: The binaries are installed in %builder_delivery_dir%
nmake install
:: Optional: get the regex package (loaded by ooRexxShell if available)
cdoorexx
svn checkout svn://svn.code.sf.net/p/oorexx/code-0/incubator/regex official/incubator/regex
cdincubator
mklink /d regex ..\..\official\incubator\regex
:: Try oorexxshell, see the demos:
:: https://jlfaucher.github.io/executor.master/demos/index.html
cdoorexx
oorexxshell
:: Next time, when starting from a fresh console:
cd <my directory>/rexx/oorexx
:: system-arch is windows-arm64 or windows-x86_64.
call ..\builder\scripts\setenv build\executor.master\sandbox\jlf\trunk\windows-x86_64\cl\release