Commit 5d59bf6b authored by John van Groningen's avatar John van Groningen
Browse files

in clean-classic for linux-x86 remove txt/Makefile_stdenv, use Makefile.linux from stdenv instead

parent 98e9aff6
Pipeline #49812 passed with stage
in 13 minutes and 21 seconds
......@@ -25,7 +25,7 @@ cp stdenv/StdString.dcl clean/StdEnv
cp clean-classic/linux-x86/txt/_startupProfile.dcl clean/StdEnv
cp clean-classic/linux-x86/txt/_startupTrace.dcl clean/StdEnv
cp clean-classic/linux-x86/txt/Makefile_stdenv clean/StdEnv/Makefile
cp stdenv/Makefile.linux clean/StdEnv/Makefile
cp clean-classic/linux-x86/txt/make.sh clean/StdEnv/make.sh
cp clean-classic/linux-x86/txt/install.sh clean/StdEnv/install.sh
......
#
# Makefile for the Clean Standard Environment
#
#
# make (= make stdenv):
# compiles all modules
#
# make install:
# compiles all modules
# copies files to install directory
#
# make cleanup:
# removes all files in this directory that can be recreated
#
CLEAN_MODULES = \
StdArray StdCharList StdClass StdDebug StdFunc StdFunctions StdList \
StdOrdList StdOverloaded StdTuple _SystemEnum StdEnum _SystemArray StdEnv \
_SystemStrictLists _SystemEnumStrict StdStrictLists StdOverloadedList StdGeneric StdMaybe
SYSTEM_MODULES = \
StdBool StdChar StdFile StdInt StdMisc StdReal StdString
ABC_MODULES = \
_system
OBJECT_MODULES = \
_startup _startupProfile _startupTrace
SYSTEM_OBJECT_MODULES = \
CLEAN_MODULES_ABC = $(CLEAN_MODULES:%=Clean\ System\ Files/%.abc)
SYSTEM_MODULES_ABC = $(SYSTEM_MODULES:%=Clean\ System\ Files/%.abc)
SYSTEM_MODULES_ICL = $(SYSTEM_MODULES:%=%.icl)
ABC_MODULES_ABC = $(ABC_MODULES:%=Clean\ System\ Files/%.abc)
CLEAN_MODULES_O = $(CLEAN_MODULES:%=Clean\ System\ Files/%.o)
SYSTEM_MODULES_O = $(SYSTEM_MODULES:%=Clean\ System\ Files/%.o)
ABC_MODULES_O = $(ABC_MODULES:%=Clean\ System\ Files/%.o)
OBJECT_MODULES_O = $(OBJECT_MODULES:%=Clean\ System\ Files/%.o)
SYSTEM_OBJECT_MODULES_O = $(SYSTEM_OBJECT_MODULES:%=Clean\ System\ Files/%.o)
STDENV_FILES = \
$(CLEAN_MODULES:%=%.icl) \
$(CLEAN_MODULES:%=%.dcl) \
$(SYSTEM_MODULES:%=%.dcl) \
$(SYSTEM_MODULES_ABC) \
$(CLEAN_MODULES_ABC) \
$(ABC_MODULES_ABC) \
wait1 \
$(SYSTEM_MODULES_O) \
$(CLEAN_MODULES_O) \
$(ABC_MODULES_O) \
$(OBJECT_MODULES_O) \
$(SYSTEM_OBJECT_MODULES_O)
wait1:
sleep 1
#
# Compile
#
stdenv: $(STDENV_FILES)
#
# Install
#
# the order here is important, because the files will be
# installed in the order given below.
INSTALL_STDENV_FILES = \
$(CLEAN_MODULES:%=$(INSTALL_STDENV_DIR)/%.icl) \
$(CLEAN_MODULES:%=$(INSTALL_STDENV_DIR)/%.dcl) \
$(SYSTEM_MODULES:%=$(INSTALL_STDENV_DIR)/%.dcl) \
$(ABC_MODULES:%=$(INSTALL_STDENV_DIR)/%.dcl) \
$(OBJECT_MODULES:%=$(INSTALL_STDENV_DIR)/%.dcl) \
$(SYSTEM_MODULES:%=$(INSTALL_STDENV_DIR)/Clean\ System\ Files/%.abc) \
$(CLEAN_MODULES:%=$(INSTALL_STDENV_DIR)/Clean\ System\ Files/%.abc) \
$(ABC_MODULES:%=$(INSTALL_STDENV_DIR)/Clean\ System\ Files/%.abc) \
wait2 \
$(SYSTEM_MODULES:%=$(INSTALL_STDENV_DIR)/Clean\ System\ Files/%.o) \
$(CLEAN_MODULES:%=$(INSTALL_STDENV_DIR)/Clean\ System\ Files/%.o) \
$(ABC_MODULES:%=$(INSTALL_STDENV_DIR)/Clean\ System\ Files/%.o) \
$(OBJECT_MODULES:%=$(INSTALL_STDENV_DIR)/Clean\ System\ Files/%.o) \
$(SYSTEM_OBJECT_MODULES:%=$(INSTALL_STDENV_DIR)/Clean\ System\ Files/%.o)
install: stdenv $(INSTALL_STDENV_DIR) $(INSTALL_STDENV_DIR)/Clean\ System\ Files $(INSTALL_STDENV_FILES)
wait2:
sleep 1
$(INSTALL_STDENV_DIR) :
mkdir -p "$@"
$(INSTALL_STDENV_DIR)/Clean\ System\ Files :
mkdir -p "$@"
$(INSTALL_STDENV_DIR)/% : %
cp --preserve=timestamps "$<" "$@"
chmod 644 "$@"
#
# Cleanup
#
cleanup:
$(RM) $(CLEAN_MODULES_ABC) \
$(RM) $(CLEAN_MODULES_O) \
$(RM) $(SYSTEM_MODULES_O) \
$(RM) $(ABC_MODULES_O)
#
# Commands
#
CLM = clm -P .
CLMFLAGS =
.SUFFIXES: .abc .dcl .icl .o
.icl.abc:
$(CLM) $(CLMFLAGS) -ABC $*
.icl.o:
$(CLM) $(CLMFLAGS) -O `basename "$*" .icl`
.abc.o:
$(CLM) $(CLMFLAGS) -O `basename "$*" .icl`
Clean\ System\ Files/StdArray.o : StdArray.icl StdArray.dcl
$(CLM) -O StdArray
Clean\ System\ Files/StdArray.abc : StdArray.icl StdArray.dcl
$(CLM) -ABC StdArray
Clean\ System\ Files/StdCharList.o : StdCharList.icl StdCharList.dcl
$(CLM) -O StdCharList
Clean\ System\ Files/StdCharList.abc : StdCharList.icl StdCharList.dcl
$(CLM) -ABC StdCharList
Clean\ System\ Files/StdClass.o : StdClass.icl StdClass.dcl
$(CLM) -O StdClass
Clean\ System\ Files/StdClass.abc : StdClass.icl StdClass.dcl
$(CLM) -ABC StdClass
Clean\ System\ Files/StdDebug.o : StdDebug.icl StdDebug.dcl
$(CLM) -O StdDebug
Clean\ System\ Files/StdDebug.abc : StdDebug.icl StdDebug.dcl
$(CLM) -ABC StdDebug
Clean\ System\ Files/StdEnum.o : StdEnum.icl StdEnum.dcl
$(CLM) -O StdEnum
Clean\ System\ Files/StdEnum.abc : StdEnum.icl StdEnum.dcl
$(CLM) -ABC StdEnum
Clean\ System\ Files/StdEnv.o : StdEnv.icl StdEnv.dcl
$(CLM) -O StdEnv
Clean\ System\ Files/StdEnv.abc : StdEnv.icl StdEnv.dcl
$(CLM) -ABC StdEnv
Clean\ System\ Files/StdFunc.o : StdFunc.icl StdFunc.dcl
$(CLM) -O StdFunc
Clean\ System\ Files/StdFunc.abc : StdFunc.icl StdFunc.dcl
$(CLM) -ABC StdFunc
Clean\ System\ Files/StdFunctions.o : StdFunctions.icl StdFunctions.dcl
$(CLM) -O StdFunctions
Clean\ System\ Files/StdFunctions.abc : StdFunctions.icl StdFunctions.dcl
$(CLM) -ABC StdFunctions
Clean\ System\ Files/StdMaybe.o : StdMaybe.icl StdMaybe.dcl
$(CLM) -O StdMaybe
Clean\ System\ Files/StdMaybe.abc : StdMaybe.icl StdMaybe.dcl
$(CLM) -ABC StdMaybe
Clean\ System\ Files/StdList.o : StdList.icl StdList.dcl
$(CLM) -O StdList
Clean\ System\ Files/StdList.abc : StdList.icl StdList.dcl
$(CLM) -ABC StdList
Clean\ System\ Files/StdOrdList.o : StdOrdList.icl StdOrdList.dcl
$(CLM) -O StdOrdList
Clean\ System\ Files/StdOrdList.abc : StdOrdList.icl StdOrdList.dcl
$(CLM) -ABC StdOrdList
Clean\ System\ Files/StdOverloaded.o : StdOverloaded.icl StdOverloaded.dcl
$(CLM) -O StdOverloaded
Clean\ System\ Files/StdOverloaded.abc : StdOverloaded.icl StdOverloaded.dcl
$(CLM) -ABC StdOverloaded
Clean\ System\ Files/StdTuple.o : StdTuple.icl StdTuple.dcl
$(CLM) -O StdTuple
Clean\ System\ Files/StdTuple.abc : StdTuple.icl StdTuple.dcl
$(CLM) -ABC StdTuple
Clean\ System\ Files/_SystemEnum.o : _SystemEnum.icl _SystemEnum.dcl
$(CLM) -O _SystemEnum
Clean\ System\ Files/_SystemEnum.abc : _SystemEnum.icl _SystemEnum.dcl
$(CLM) -ABC _SystemEnum
Clean\ System\ Files/StdBool.o : StdBool.dcl Clean\ System\ Files/StdBool.abc
$(CLM) -O StdBool
Clean\ System\ Files/StdBool.abc : StdBool.icl StdBool.dcl
$(CLM) -pt -ABC StdBool
Clean\ System\ Files/StdChar.o : StdChar.dcl Clean\ System\ Files/StdChar.abc
$(CLM) -O StdChar
Clean\ System\ Files/StdChar.abc : StdChar.icl StdChar.dcl
$(CLM) -pt -ABC StdChar
Clean\ System\ Files/StdFile.o : StdFile.dcl Clean\ System\ Files/StdFile.abc
$(CLM) -O StdFile
Clean\ System\ Files/StdFile.abc : StdFile.icl StdFile.dcl
$(CLM) -pt -ABC StdFile
Clean\ System\ Files/StdInt.o : StdInt.dcl Clean\ System\ Files/StdInt.abc
$(CLM) -O StdInt
Clean\ System\ Files/StdInt.abc : StdInt.icl StdInt.dcl
$(CLM) -pt -ABC StdInt
Clean\ System\ Files/StdMisc.o : StdMisc.dcl Clean\ System\ Files/StdMisc.abc
$(CLM) -O StdMisc
Clean\ System\ Files/StdMisc.abc : StdMisc.icl StdMisc.dcl
$(CLM) -pt -ABC StdMisc
Clean\ System\ Files/StdReal.o : StdReal.dcl Clean\ System\ Files/StdReal.abc
$(CLM) -O StdReal
Clean\ System\ Files/StdReal.abc : StdReal.icl StdReal.dcl
$(CLM) -pt -ABC StdReal
Clean\ System\ Files/StdString.o : StdString.dcl Clean\ System\ Files/StdString.abc
$(CLM) -O StdString
Clean\ System\ Files/StdString.abc : StdString.icl StdString.dcl
$(CLM) -pt -ABC StdString
Clean\ System\ Files/_SystemArray.o : _SystemArray.dcl Clean\ System\ Files/_SystemArray.abc
$(CLM) -O _SystemArray
Clean\ System\ Files/_SystemArray.abc : _SystemArray.icl _SystemArray.dcl
$(CLM) -ABC _SystemArray
Clean\ System\ Files/_SystemStrictLists.o : _SystemStrictLists.dcl Clean\ System\ Files/_SystemStrictLists.abc
$(CLM) -O _SystemStrictLists
Clean\ System\ Files/_SystemStrictLists.abc : _SystemStrictLists.icl _SystemStrictLists.dcl
$(CLM) -ABC _SystemStrictLists
Clean\ System\ Files/_SystemEnumStrict.o : _SystemEnumStrict.dcl Clean\ System\ Files/_SystemEnumStrict.abc
$(CLM) -O _SystemEnumStrict
Clean\ System\ Files/_SystemEnumStrict.abc : _SystemEnumStrict.icl _SystemEnumStrict.dcl
$(CLM) -ABC _SystemEnumStrict
Clean\ System\ Files/StdStrictLists.o : StdStrictLists.dcl Clean\ System\ Files/StdStrictLists.abc
$(CLM) -O StdStrictLists
Clean\ System\ Files/StdStrictLists.abc : StdStrictLists.icl StdStrictLists.dcl
$(CLM) -ABC StdStrictLists
Clean\ System\ Files/StdOverloadedList.o : StdOverloadedList.dcl Clean\ System\ Files/StdOverloadedList.abc
$(CLM) -O StdOverloadedList
Clean\ System\ Files/StdOverloadedList.abc : StdOverloadedList.icl StdOverloadedList.dcl
$(CLM) -ABC StdOverloadedList
Clean\ System\ Files/StdGeneric.abc : StdGeneric.icl StdGeneric.dcl
$(CLM) -ABC StdGeneric
Clean\ System\ Files/StdGeneric.o : StdGeneric.dcl Clean\ System\ Files/StdGeneric.abc
$(CLM) -O StdGeneric
Clean\ System\ Files/_system.o : Clean\ System\ Files/_system.abc
$(CLM) -O _system
# compile system modules twice, to make sure all inlining is done
system_abc: $(SYSTEM_MODULES_ABC) system_abc_touch
system_abc_touch:
touch $(SYSTEM_MODULES_ICL)
$(MAKE) system_abc_again
system_abc_again: $(SYSTEM_MODULES_ABC)
# before calling the script define: INSTALL_STDENV_DIR CLEANLIB CLEANPATH CLMP CLMFLAGS
set -e
CLEAN_MODULES="StdArray StdCharList StdClass StdDebug StdFunc StdList \
StdOrdList StdOverloaded StdTuple _SystemEnum StdEnum _SystemArray StdEnv \
_SystemStrictLists _SystemEnumStrict StdStrictLists StdOverloadedList StdGeneric"
# _SystemStrictLists _SystemEnumStrict StdStrictLists StdOverloadedList"
SYSTEM_MODULES="StdBool StdChar StdFile StdInt StdMisc StdReal StdString"
ABC_MODULES="_system"
CALL_CLM="$CLMP -P . $CLMFLAGS"
for M in $SYSTEM_MODULES ; do
$CALL_CLM -ABC $M
done
# and again for inlining
for M in $SYSTEM_MODULES ; do
rm "Clean System Files"/$M.abc
$CALL_CLM -ABC $M
done
for M in $CLEAN_MODULES $ABC_MODULES; do
$CALL_CLM -ABC $M
done
sleep 1
for M in $SYSTEM_MODULES $CLEAN_MODULES $ABC_MODULES; do
$CALL_CLM -O $M
done
Supports Markdown
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