mirror of
https://github.com/clearlinux/graphene.git
synced 2026-09-06 13:51:28 +00:00
- Fixing AES-CMAC algorithm - Using SHA512 to hash file stubs (much faster than SHA256 and AES-CMAC) - Hardening enclave interface (still work-in-progress); delt with issue #28 - Handling socket/pipe polling better - Allowing setting the lowest heap address in enclaves ('sgx.heap_min' in manifest) - Fixing the pipe between processes (for SGX) - Fixing race condition in futex handling in LibOS - Inheriting epoll handles in forked chilren - Assigning signal code (now only hard-coding FPE_INTDIV, BUS_ADRERR, SEGV_ACCERR, SEGV_MAPERR) - Fixing race condition in vma allocation (likely to fix bug() in bookkeep/shim_vma.c) - Clearer debug message in LibOS - Fixing calling convention in LibOS and glibc - Fixing futex behavior (FUTEX_WAIT takes relative time, FUTEX_WAIT_BITSET takes absolute time) - More system call implemented - More application working (NGINX)
55 lines
1.2 KiB
Makefile
55 lines
1.2 KiB
Makefile
SYS ?= $(shell gcc -dumpmachine)
|
|
|
|
CC = gcc
|
|
CFLAGS = -Wall -O2 -std=gnu99 -fgnu89-inline -fno-builtin -nostdlib \
|
|
-I../include/pal -I../lib
|
|
|
|
default: all
|
|
include ../src/Makefile.Test
|
|
|
|
executables = HelloWorld File Failure Thread Fork Event Process Exception \
|
|
Memory Pipe Tcp Udp Yield Broadcast Ipc Server Wait HandleSend \
|
|
Select Segment Sleep Cpuid Pie
|
|
manifests = manifest
|
|
|
|
target = $(executables) $(manifests)
|
|
|
|
graphene_lib = .lib/graphene-lib.a
|
|
pal_lib = ../src/libpal.so
|
|
headers = $(wildcard ../include/pal/*.h)
|
|
|
|
all: pal_loader $(call expand_target,$(target))
|
|
|
|
ifeq ($(DEBUG),1)
|
|
CC += -g
|
|
endif
|
|
export DEBUG
|
|
|
|
pal_loader:
|
|
ln -sf ../../Runtime/pal_loader
|
|
|
|
manifest: manifest.template
|
|
cp -f $< $@
|
|
|
|
%.manifest: %.manifest.template
|
|
cp -f $< $@
|
|
|
|
ifeq ($(SYS),x86_64-linux-gnu)
|
|
$(executables): %: %.c $(graphene_lib) $(pal_lib) ../src/user_start.o
|
|
@echo [ $@ ]
|
|
@$(CC) $(CFLAGS) $(if $(filter Pie,$@),-fPIC -pie,) $^ -o $@
|
|
|
|
$(graphene_lib):
|
|
$(MAKE) -C ../lib target=$(shell pwd)/.lib/
|
|
|
|
.PHONY: pack
|
|
pack: $(executables)
|
|
@../../Scripts/pack_binaries.sh test $^
|
|
else
|
|
$(executables): .packed/test.tar.gz
|
|
tar -xmozf $< $@
|
|
endif
|
|
|
|
clean:
|
|
rm -rf pal_loader $(call expand_target,$(target)) .lib *.cached
|