9os

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 046ba6e114b69e411dc707b443dd45a1bb6c8b2b
parent 164e74ae810ffa1a0a5dc23e1fb1d5ed7f32afe6
Author: Roberto Vargas <roberto.vargas@arm.com>
Date:   Fri,  2 Nov 2018 07:56:30 +0000

[libc] Fix linux build

Sys.h wasn't updated and some object files were missed
in arm64/linux/Makefile.

Diffstat:
Minclude/bits/linux/sys.h | 7+++++++
Msrc/libc/arch/amd64/linux/Makefile | 1+
Msrc/libc/arch/arm64/linux/Makefile | 8++++++++
Mtest/Makefile | 8++------
Dtest/test1/Makefile | 100-------------------------------------------------------------------------------
Dtest/test2/Makefile | 13-------------
Dtest/test3/Makefile | 13-------------
Dtest/test4/Makefile | 13-------------
Atest/unit/Makefile | 16++++++++++++++++
Rtest/chktest.sh -> test/unit/chktest.sh | 0
Rtest/test1/.gitignore -> test/unit/test1/.gitignore | 0
Atest/unit/test1/Makefile | 100+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Rtest/test1/descr -> test/unit/test1/descr | 0
Rtest/test1/genrmu.sh -> test/unit/test1/genrmu.sh | 0
Rtest/test1/test.c -> test/unit/test1/test.c | 0
Rtest/test1/test.sh -> test/unit/test1/test.sh | 0
Atest/unit/test2/Makefile | 13+++++++++++++
Rtest/test2/descr -> test/unit/test2/descr | 0
Rtest/test2/test.c -> test/unit/test2/test.c | 0
Rtest/test2/test.exp -> test/unit/test2/test.exp | 0
Rtest/test2/test.sh -> test/unit/test2/test.sh | 0
Atest/unit/test3/Makefile | 13+++++++++++++
Rtest/test3/descr -> test/unit/test3/descr | 0
Rtest/test3/test.c -> test/unit/test3/test.c | 0
Rtest/test3/test.sh -> test/unit/test3/test.sh | 0
Atest/unit/test4/Makefile | 13+++++++++++++
Rtest/test4/descr -> test/unit/test4/descr | 0
Rtest/test4/test.c -> test/unit/test4/test.c | 0
Rtest/test4/test.exp -> test/unit/test4/test.exp | 0
Rtest/test4/test.sh -> test/unit/test4/test.sh | 0
30 files changed, 173 insertions(+), 145 deletions(-)

diff --git a/include/bits/linux/sys.h b/include/bits/linux/sys.h @@ -8,5 +8,12 @@ typedef int pid_t; +struct sigaction { + void (*sa_handler)(int); + int sa_mask; + int sa_flags; +}; + extern pid_t _getpid(void); extern int _kill(pid_t pid, int signum); +extern int _sigaction(int sig, struct sigaction *new, struct sigaction *old); diff --git a/src/libc/arch/amd64/linux/Makefile b/src/libc/arch/amd64/linux/Makefile @@ -12,6 +12,7 @@ OBJS = _Exit.o \ _write.o \ _brk.o \ _getheap.o \ + _cerrno.o \ all: syscall $(MAKE) objs diff --git a/src/libc/arch/arm64/linux/Makefile b/src/libc/arch/arm64/linux/Makefile @@ -11,6 +11,14 @@ OBJS = _Exit.o \ _read.o \ _write.o \ _getheap.o \ + _cerrno.o \ + _open.o \ + _sigaction.o \ + _tzone.o \ + getenv.o \ + raise.o \ + signal.o \ + time.o \ all: syscall $(MAKE) objs diff --git a/test/Makefile b/test/Makefile @@ -1,16 +1,12 @@ PROJECTDIR = .. include $(PROJECTDIR)/scripts/rules.mk -DIRS = test1 test2 test3 test4 +DIRS = unit all: $(DIRS) -test: FORCE - @MAKE=$(MAKE) ./chktest.sh - $(DIRS): FORCE +@cd $@ && $(MAKE) -clean: +clean test: $(FORALL) - rm -f test.log diff --git a/test/test1/Makefile b/test/test1/Makefile @@ -1,100 +0,0 @@ -PROJECTDIR = ../.. -include $(PROJECTDIR)/scripts/rules.mk - -LIBOBJ = hdl_RMU_System_InterfaceVersion.o \ - hdl_RMU_System_Status.o \ - hdl_RMU_System_Enable.o \ - hdl_RMU_Local_Status.o \ - hdl_RMU_Local_Load.o \ - hdl_RMU_Local_Validate.o \ - hdl_RMU_Crypto_Random.o \ - hdl_RMU_Realm_Register.o \ - hdl_RMU_Realm_Release.o \ - hdl_RMU_Realm_InvalidateCurrent.o \ - hdl_RMU_Realm_Invalidate.o \ - hdl_RMU_Realm_GetParameterValue.o \ - hdl_RMU_Realm_SetParameterValue.o \ - hdl_RMU_Realm_GetParameterInheritance.o \ - hdl_RMU_Realm_SetParameterInheritance.o \ - hdl_RMU_Realm_Initialize.o \ - hdl_RMU_Realm_Prepare.o \ - hdl_RMU_Realm_Populate.o \ - hdl_RMU_Realm_Activate.o \ - hdl_RMU_Realm_Info.o \ - hdl_RMU_Realm_ReadMemory.o \ - hdl_RMU_Realm_WriteMemory.o \ - hdl_RMU_Realm_SetMetadata.o \ - hdl_RMU_Realm_GetMetadata.o \ - hdl_RMU_Realm_CreateZeroMetadata.o \ - hdl_RMU_Realm_SetCommandTrap.o \ - hdl_RMU_Realm_AttestationReportSize.o \ - hdl_RMU_Realm_AttestationReportInit.o \ - hdl_RMU_Realm_AttestationReport.o \ - hdl_RMU_Realm_ExtendBindingKeySeedValue.o \ - hdl_RMU_Realm_SetBindingKeySeedLock.o \ - hdl_RMU_Realm_DeriveBindingKey.o \ - hdl_RMU_Realm_GetBindingKeySeedValue.o \ - hdl_RMU_REC_Size.o \ - hdl_RMU_REC_Register.o \ - hdl_RMU_REC_Prepare.o \ - hdl_RMU_REC_Release.o \ - hdl_RMU_REC_ReadGeneralPurposeRegister.o \ - hdl_RMU_REC_WriteGeneralPurposeRegister.o \ - hdl_RMU_REC_ReadVectorRegister.o \ - hdl_RMU_REC_WriteVectorRegister.o \ - hdl_RMU_REC_ReadSystemRegister.o \ - hdl_RMU_REC_WriteSystemRegister.o \ - hdl_RMU_MDT_BufferSize.o \ - hdl_RMU_MDT_Register.o \ - hdl_RMU_MDT_Release.o \ - hdl_RMU_MDT_Info.o \ - hdl_RMU_MDT_WriteStorage.o \ - hdl_RMU_MDT_ReadStorage.o \ - hdl_RMU_MDT_Move.o \ - hdl_RMU_Granule_Invalidate.o \ - hdl_RMU_Granule_Clean.o \ - hdl_RMU_Granule_Info.o \ - hdl_RMU_Granule_Detail.o \ - hdl_RMU_Granule_SetPermissions.o \ - hdl_RMU_Granule_Sync.o \ - hdl_RMU_Granule_Claim.o \ - hdl_RMU_Granule_Release.o \ - hdl_RMU_Granule_AddInit.o \ - hdl_RMU_Granule_Add.o \ - hdl_RMU_Granule_Reclaim.o \ - hdl_RMU_Granule_Fuse.o \ - hdl_RMU_Granule_Shatter.o \ - hdl_RMU_Granule_SetGlobalVisibility.o \ - hdl_RMU_Granule_ExportInit.o \ - hdl_RMU_Granule_Export.o \ - hdl_RMU_Granule_ImportInit.o \ - hdl_RMU_Granule_Import.o \ - -ROMOBJS = $(ARCHDIR)/crt-$(SYS).o $(SRCDIR)/romfw/builtin.o test.o -RAMOBJS = $(ARCHDIR)/crt-$(SYS).o $(SRCDIR)/ramfw/builtin.o test.o -LIBS = -lhdl -lc -LIBDEP = libhdl.a $(LIBDIR)/libc.a - -TARGET = romfw ramfw - -all: run - -run: $(TARGET) - -romfw: $(ROMOBJS) $(LIBDEP) - $(LD) -L. $(RCODE_LDFLAGS) $(ROMOBJS) $(LIBS) -o $@ - -ramfw: $(RAMOBJS) $(LIBDEP) - $(LD) -L. $(RCODE_LDFLAGS) $(RAMOBJS) $(LIBS) -o $@ - -libhdl.a: $(LIBOBJ) - $(AR) $(ARFLAGS) $@ $? - ranlib $@ - -$(LIBOBJ): $(LIBOBJ:.o=.c) - -$(LIBOBJ:.o=.c): genrmu.sh - ./genrmu.sh - -clean: - rm -f $(LIBOBJ:.o=.c) *.a diff --git a/test/test2/Makefile b/test/test2/Makefile @@ -1,13 +0,0 @@ -PROJECTDIR = ../.. -include $(PROJECTDIR)/scripts/rules.mk - -OBJS = $(ARCHDIR)/crt-$(SYS).o test.o -LIBS = -ltypes -lc -LIBDEP = $(LIBDIR)/libtypes.a $(LIBDIR)/libc.a - -TARGET = run - -all: $(TARGET) - -$(TARGET): $(OBJS) $(LIBDEP) - $(LD) $(RCODE_LDFLAGS) $(OBJS) $(LIBS) -o $@ diff --git a/test/test3/Makefile b/test/test3/Makefile @@ -1,13 +0,0 @@ -PROJECTDIR = ../.. -include $(PROJECTDIR)/scripts/rules.mk - -OBJS = $(ARCHDIR)/crt-$(SYS).o $(SRCDIR)/romfw/builtin.o test.o -LIBS = -lhdl -lrmu -lc -LIBDEP = $(LIBDIR)/libhdl.a $(LIBDIR)/librmu.a $(LIBDIR)/libc.a - -TARGET = run - -all: $(TARGET) - -$(TARGET): $(OBJS) $(LIBDEP) - $(LD) $(RCODE_LDFLAGS) $(OBJS) $(LIBS) -o $@ diff --git a/test/test4/Makefile b/test/test4/Makefile @@ -1,13 +0,0 @@ -PROJECTDIR = ../.. -include $(PROJECTDIR)/scripts/rules.mk - -OBJS = $(ARCHDIR)/crt-$(SYS).o $(SRCDIR)/romfw/builtin.o test.o -LIBS = -lhdl -lrmu -lc -LIBDEP = $(LIBDIR)/libhdl.a $(LIBDIR)/librmu.a $(LIBDIR)/libc.a - -TARGET = run - -all: $(TARGET) - -$(TARGET): $(OBJS) $(LIBDEP) - $(LD) $(RCODE_LDFLAGS) $(OBJS) $(LIBS) -o $@ diff --git a/test/unit/Makefile b/test/unit/Makefile @@ -0,0 +1,16 @@ +PROJECTDIR = ../.. +include $(PROJECTDIR)/scripts/rules.mk + +DIRS = test1 test2 test3 test4 + +all: $(DIRS) + +test: FORCE + @MAKE=$(MAKE) ./chktest.sh + +$(DIRS): FORCE + +@cd $@ && $(MAKE) + +clean: + $(FORALL) + rm -f test.log diff --git a/test/chktest.sh b/test/unit/chktest.sh diff --git a/test/test1/.gitignore b/test/unit/test1/.gitignore diff --git a/test/unit/test1/Makefile b/test/unit/test1/Makefile @@ -0,0 +1,100 @@ +PROJECTDIR = ../../.. +include $(PROJECTDIR)/scripts/rules.mk + +LIBOBJ = hdl_RMU_System_InterfaceVersion.o \ + hdl_RMU_System_Status.o \ + hdl_RMU_System_Enable.o \ + hdl_RMU_Local_Status.o \ + hdl_RMU_Local_Load.o \ + hdl_RMU_Local_Validate.o \ + hdl_RMU_Crypto_Random.o \ + hdl_RMU_Realm_Register.o \ + hdl_RMU_Realm_Release.o \ + hdl_RMU_Realm_InvalidateCurrent.o \ + hdl_RMU_Realm_Invalidate.o \ + hdl_RMU_Realm_GetParameterValue.o \ + hdl_RMU_Realm_SetParameterValue.o \ + hdl_RMU_Realm_GetParameterInheritance.o \ + hdl_RMU_Realm_SetParameterInheritance.o \ + hdl_RMU_Realm_Initialize.o \ + hdl_RMU_Realm_Prepare.o \ + hdl_RMU_Realm_Populate.o \ + hdl_RMU_Realm_Activate.o \ + hdl_RMU_Realm_Info.o \ + hdl_RMU_Realm_ReadMemory.o \ + hdl_RMU_Realm_WriteMemory.o \ + hdl_RMU_Realm_SetMetadata.o \ + hdl_RMU_Realm_GetMetadata.o \ + hdl_RMU_Realm_CreateZeroMetadata.o \ + hdl_RMU_Realm_SetCommandTrap.o \ + hdl_RMU_Realm_AttestationReportSize.o \ + hdl_RMU_Realm_AttestationReportInit.o \ + hdl_RMU_Realm_AttestationReport.o \ + hdl_RMU_Realm_ExtendBindingKeySeedValue.o \ + hdl_RMU_Realm_SetBindingKeySeedLock.o \ + hdl_RMU_Realm_DeriveBindingKey.o \ + hdl_RMU_Realm_GetBindingKeySeedValue.o \ + hdl_RMU_REC_Size.o \ + hdl_RMU_REC_Register.o \ + hdl_RMU_REC_Prepare.o \ + hdl_RMU_REC_Release.o \ + hdl_RMU_REC_ReadGeneralPurposeRegister.o \ + hdl_RMU_REC_WriteGeneralPurposeRegister.o \ + hdl_RMU_REC_ReadVectorRegister.o \ + hdl_RMU_REC_WriteVectorRegister.o \ + hdl_RMU_REC_ReadSystemRegister.o \ + hdl_RMU_REC_WriteSystemRegister.o \ + hdl_RMU_MDT_BufferSize.o \ + hdl_RMU_MDT_Register.o \ + hdl_RMU_MDT_Release.o \ + hdl_RMU_MDT_Info.o \ + hdl_RMU_MDT_WriteStorage.o \ + hdl_RMU_MDT_ReadStorage.o \ + hdl_RMU_MDT_Move.o \ + hdl_RMU_Granule_Invalidate.o \ + hdl_RMU_Granule_Clean.o \ + hdl_RMU_Granule_Info.o \ + hdl_RMU_Granule_Detail.o \ + hdl_RMU_Granule_SetPermissions.o \ + hdl_RMU_Granule_Sync.o \ + hdl_RMU_Granule_Claim.o \ + hdl_RMU_Granule_Release.o \ + hdl_RMU_Granule_AddInit.o \ + hdl_RMU_Granule_Add.o \ + hdl_RMU_Granule_Reclaim.o \ + hdl_RMU_Granule_Fuse.o \ + hdl_RMU_Granule_Shatter.o \ + hdl_RMU_Granule_SetGlobalVisibility.o \ + hdl_RMU_Granule_ExportInit.o \ + hdl_RMU_Granule_Export.o \ + hdl_RMU_Granule_ImportInit.o \ + hdl_RMU_Granule_Import.o \ + +ROMOBJS = $(ARCHDIR)/crt-$(SYS).o $(SRCDIR)/romfw/builtin.o test.o +RAMOBJS = $(ARCHDIR)/crt-$(SYS).o $(SRCDIR)/ramfw/builtin.o test.o +LIBS = -lhdl -lc +LIBDEP = libhdl.a $(LIBDIR)/libc.a + +TARGET = romfw ramfw + +all: run + +run: $(TARGET) + +romfw: $(ROMOBJS) $(LIBDEP) + $(LD) -L. $(RCODE_LDFLAGS) $(ROMOBJS) $(LIBS) -o $@ + +ramfw: $(RAMOBJS) $(LIBDEP) + $(LD) -L. $(RCODE_LDFLAGS) $(RAMOBJS) $(LIBS) -o $@ + +libhdl.a: $(LIBOBJ) + $(AR) $(ARFLAGS) $@ $? + ranlib $@ + +$(LIBOBJ): $(LIBOBJ:.o=.c) + +$(LIBOBJ:.o=.c): genrmu.sh + ./genrmu.sh + +clean: + rm -f $(LIBOBJ:.o=.c) *.a diff --git a/test/test1/descr b/test/unit/test1/descr diff --git a/test/test1/genrmu.sh b/test/unit/test1/genrmu.sh diff --git a/test/test1/test.c b/test/unit/test1/test.c diff --git a/test/test1/test.sh b/test/unit/test1/test.sh diff --git a/test/unit/test2/Makefile b/test/unit/test2/Makefile @@ -0,0 +1,13 @@ +PROJECTDIR = ../../.. +include $(PROJECTDIR)/scripts/rules.mk + +OBJS = $(ARCHDIR)/crt-$(SYS).o test.o +LIBS = -ltypes -lc +LIBDEP = $(LIBDIR)/libtypes.a $(LIBDIR)/libc.a + +TARGET = run + +all: $(TARGET) + +$(TARGET): $(OBJS) $(LIBDEP) + $(LD) $(RCODE_LDFLAGS) $(OBJS) $(LIBS) -o $@ diff --git a/test/test2/descr b/test/unit/test2/descr diff --git a/test/test2/test.c b/test/unit/test2/test.c diff --git a/test/test2/test.exp b/test/unit/test2/test.exp diff --git a/test/test2/test.sh b/test/unit/test2/test.sh diff --git a/test/unit/test3/Makefile b/test/unit/test3/Makefile @@ -0,0 +1,13 @@ +PROJECTDIR = ../../.. +include $(PROJECTDIR)/scripts/rules.mk + +OBJS = $(ARCHDIR)/crt-$(SYS).o $(SRCDIR)/romfw/builtin.o test.o +LIBS = -lhdl -lrmu -lc +LIBDEP = $(LIBDIR)/libhdl.a $(LIBDIR)/librmu.a $(LIBDIR)/libc.a + +TARGET = run + +all: $(TARGET) + +$(TARGET): $(OBJS) $(LIBDEP) + $(LD) $(RCODE_LDFLAGS) $(OBJS) $(LIBS) -o $@ diff --git a/test/test3/descr b/test/unit/test3/descr diff --git a/test/test3/test.c b/test/unit/test3/test.c diff --git a/test/test3/test.sh b/test/unit/test3/test.sh diff --git a/test/unit/test4/Makefile b/test/unit/test4/Makefile @@ -0,0 +1,13 @@ +PROJECTDIR = ../../.. +include $(PROJECTDIR)/scripts/rules.mk + +OBJS = $(ARCHDIR)/crt-$(SYS).o $(SRCDIR)/romfw/builtin.o test.o +LIBS = -lhdl -lrmu -lc +LIBDEP = $(LIBDIR)/libhdl.a $(LIBDIR)/librmu.a $(LIBDIR)/libc.a + +TARGET = run + +all: $(TARGET) + +$(TARGET): $(OBJS) $(LIBDEP) + $(LD) $(RCODE_LDFLAGS) $(OBJS) $(LIBS) -o $@ diff --git a/test/test4/descr b/test/unit/test4/descr diff --git a/test/test4/test.c b/test/unit/test4/test.c diff --git a/test/test4/test.exp b/test/unit/test4/test.exp diff --git a/test/test4/test.sh b/test/unit/test4/test.sh