Commit 941f0cec authored by ARM64 Builder's avatar ARM64 Builder
Browse files

in clean-classic for linux-arm64 add build_boot.sh

parent 5c1ba585
Pipeline #50663 passed with stage
in 15 minutes and 43 seconds
set -e
mkdir -p boot
cp -r -p clean boot/clean
(cd boot/clean; make)
mv boot/clean boot/clean0
cp -r -p clean boot/clean
cp ./clean-classic/linux-arm64/txt/README.boot boot/clean/README
./clean-classic/linux-arm64/remove_bin.sh
for m in StdArray StdEnv StdOverloaded _SystemArray StdOverloadedList \
_SystemEnum StdFunc StdFunctions _SystemEnumStrict StdCharList StdStrictLists \
_SystemStrictLists StdClass StdList StdDebug StdTuple StdEnum \
StdOrdList StdGeneric StdMaybe;
do cp -p "boot/clean0/lib/StdEnv/Clean System Files/"$m.abc "boot/clean/StdEnv/Clean System Files/"$m.abc;
done
mkdir -p boot/clean/src
cp ./clean-classic/linux-arm64/txt/Makefile_boot boot/clean/src/Makefile
cd boot/clean/src
../../../clean-classic/linux-arm64/git_clone.sh clean-compiler-and-rts/run-time-system.git RuntimeSystem
rm -Rf RuntimeSystem/.git
../../../clean-classic/linux-arm64/git_clone.sh clean-compiler-and-rts/code-generator.git CodeGenerator
rm -Rf CodeGenerator/.git
../../../clean-classic/linux-arm64/git_clone.sh clean-and-itasks/clm.git clm
rm -Rf clm/.git
../../../clean-classic/linux-arm64/svn_export.sh clean-tools/trunk/htoclean tools/htoclean
../../../clean-classic/linux-arm64/git_clone_no_checkout_depth_1.sh clean-and-itasks/clean-libraries.git clean-libraries
(cd clean-libraries; git checkout master Libraries/ArgEnvUnix Libraries/StdLib Libraries/Directory)
rm -Rf clean-libraries/.git
(cp "tools/htoclean/Clean.h" "clean-libraries/Libraries/Directory/Clean System Files Unix/Clean.h"; cd clean-libraries/Libraries/Directory; mkdir "Clean System Files"; gcc -c -O "Clean System Files Unix/cDirectory.c" -o "Clean System Files/cDirectory.o")
../../../clean-classic/linux-arm64/git_clone.sh clean-compiler-and-rts/compiler.git compiler
rm -Rf compiler/.git
../../../clean-classic/linux-arm64/git_clone.sh clean-and-itasks/clean-ide.git clean-ide
rm -Rf clean-ide/.git
chmod +x RuntimeSystem/remove_tmp_files_linux
cd ../../..
for p in compiler/main/Unix \
clean-libraries/Libraries/ArgEnvUnix compiler/frontend compiler/backend compiler/main;
do mkdir -p "boot/clean/src/$p/Clean System Files";
cp "$p/Clean System Files/"*.abc "boot/clean/src/$p/Clean System Files";
done
rm boot/clean/bin/clm
rm boot/clean/bin/htoclean
rm boot/clean/bin/patch_bin
rm boot/clean/bin/BatchBuild
rm boot/clean/bin/cpm
rm boot/clean/exe/cg
rm boot/clean/exe/cocl
#rm boot/clean/exe/linker
#rm boot/clean/data/CleanIDE
#rm boot/clean/data/ShowHeapProfile
#rm boot/clean/data/ShowTimeProfile
svn export "https://svn.cs.ru.nl/repos/$1" "$2"
all: ../StdEnv/Clean\ System\ Files/_startup.o ../StdEnv/Clean\ System\ Files/_startupTrace.o ../exe/cg ../StdEnv/Clean\ System\ Files/_system.o ../bin/patch_bin ../bin/clm clm/clms ../exe/cocl ../bin/htoclean ../bin/BatchBuild ../bin/cpm
../StdEnv/Clean\ System\ Files/_startup.o: RuntimeSystem/_startup.o
cp RuntimeSystem/_startup.o ../StdEnv/Clean\ System\ Files/_startup.o
../StdEnv/Clean\ System\ Files/_startupTrace.o: RuntimeSystem/_startupTrace.o
cp RuntimeSystem/_startupTrace.o ../StdEnv/Clean\ System\ Files/_startupTrace.o
RuntimeSystem/_startup.o:
cd RuntimeSystem ; ./remove_tmp_files_linux_arm64.sh ; make -f Makefile.linux_arm64
RuntimeSystem/_startupTrace.o:
cd RuntimeSystem ; ././remove_tmp_files_linux_arm64.sh ; make -f Makefiletrace.linux_arm64
../StdEnv/Clean\ System\ Files/_system.o: ../exe/cg
cd ../StdEnv/Clean\ System\ Files ; ../../exe/cg _system
../exe/cg: CodeGenerator/cg
cp CodeGenerator/cg ../exe/cg
CodeGenerator/cg:
cd CodeGenerator; \
$(MAKE) -f Makefile.linux_arm64
../bin/patch_bin: clm/patch_bin
cp clm/patch_bin ../bin/patch_bin
clm/patch_bin:
cd clm; \
$(MAKE) -f Makefile.linux64 patch_bin
../bin/clm: clm/clm
cp clm/clm ../bin/clm
../bin/patch_bin ../bin/clm CLEANLIB $(CWD)/../exe
../bin/patch_bin ../bin/clm CLEANPATH $(CWD)/../StdEnv
clm/clm:
cd clm; \
$(MAKE) -f Makefile.linux_arm64 clm
clm/clms:
cd clm; \
$(MAKE) -f Makefile.linux_arm64 clms
../bin/patch_bin clm/clms CLEANLIB $(CWD)/../exe
../bin/patch_bin clm/clms CLEANPATH $(CWD)/../StdEnv
clean-libraries/Libraries/ArgEnvUnix/ArgEnvC.o:
cd clean-libraries/Libraries/ArgEnvUnix; make ArgEnvC.o
compiler/main/Unix/set_return_code_c.o:
cd compiler/main/Unix; make all
../exe/cocl: compiler/cocl
cp compiler/cocl ../exe/cocl
compiler/cocl: clean-libraries/Libraries/ArgEnvUnix/ArgEnvC.o compiler/main/Unix/set_return_code_c.o
cd compiler; \
cd backendC/CleanCompilerSources; make -f Makefile.linux64; cd ../..; \
../../bin/clm -O _system; \
../../bin/clm -nt -nw -ci -ns -nr -I backend -I frontend -I main -I main/Unix -O compare_constructor ; \
../../bin/clm -gcm -h 40M -nt -nw -ci -nr -I backend -I frontend -I main -I main/Unix \
-I ../clean-libraries/Libraries/ArgEnvUnix \
-l backendC/CleanCompilerSources/backend.a \
cocl -o cocl
../bin/htoclean: tools/htoclean/htoclean
cp tools/htoclean/htoclean ../bin/htoclean
tools/htoclean/htoclean:
cd tools/htoclean/htoclean\ source\ code; \
../../../../bin/clm -I ../../../clean-libraries/Libraries/ArgEnvUnix -h 4m -nt -nr -I unix htoclean -o ../htoclean
../bin/BatchBuild: clean-ide/BatchBuild/BatchBuild
cp clean-ide/BatchBuild/BatchBuild ../bin/BatchBuild
clean-ide/BatchBuild/BatchBuild:
cd clean-ide; \
../../bin/clm -nt -nr -I BatchBuild -I Pm -I Unix -I Unix/Intel -I Util -I Interfaces/LinkerInterface -I ../clean-libraries/Libraries/StdLib -I ../clean-libraries/Libraries/Directory -I ../clean-libraries/Libraries/ArgEnvUnix BatchBuild -o BatchBuild/BatchBuild
../bin/cpm: clean-ide/cpm/cpm
cp clean-ide/cpm/cpm ../bin/cpm
clean-ide/cpm/cpm:
cd clean-ide; \
../../bin/clm -nt -nr -I cpm -I cpm/Posix -I BatchBuild -I Pm -I Unix -I Unix/Intel -I Util -I Interfaces/LinkerInterface -I ../clean-libraries/Libraries/StdLib -I ../clean-libraries/Libraries/Directory -I ../clean-libraries/Libraries/ArgEnvUnix Cpm -o cpm/cpm
CWD = $(MCWD)$(GMCWD)
MCWD : sh=pwd
GMCWD = ${shell echo `pwd`}
Installing Clean
================
First compile the executable files using:
cd src
make
cd ..
By default the Clean system is installed in the current directory.
You can override these defaults by changing INSTALL_BIN_DIR,
INSTALL_LIB_DIR, INSTALL_MAN_DIR in the Makefile.
Clean can be used from a shell using a command line interface (clm).
To install the Clean system type:
% make
Using Clean
===========
To compile Clean programs from a shell you use the command 'clm'. The manual
page for clm provides more information.
Compiling the example programs
==============================
The directory 'examples' contains small Clean programs. The
directory contains a Makefile to compile the examples.
General Info
============
More information about Clean is available on the World Wide Web:
http://clean.cs.ru.nl
Bug reports, questions and suggestions are welcome. Please send
them to:
mailto:clean@cs.ru.nl
Versions of Clean are available for several platforms.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment