|
@@ -8,17 +8,20 @@ LD = ld
|
|
|
|
|
|
CFLAGS = -Wall -fPIC -O2 -std=gnu99 -fgnu89-inline -U_FORTIFY_SOURCE \
|
|
|
-fno-omit-frame-pointer \
|
|
|
- -fno-stack-protector -fno-builtin \
|
|
|
- -I. -I../include -Ihost/$(OS) -I../lib
|
|
|
+ -fno-stack-protector -fno-builtin
|
|
|
LDFLAGS = -shared -nostdlib --version-script pal.map -z combreloc -z defs \
|
|
|
-T pal.lds
|
|
|
ARFLAGS =
|
|
|
|
|
|
-pal_target = libpal.a libpal.so
|
|
|
+pal_loader = libpal.so
|
|
|
+pal_lib = libpal.a
|
|
|
|
|
|
include host/$(OS)/Makefile.am
|
|
|
|
|
|
-defs = -DIN_PAL
|
|
|
+CFLAGS += -I. -I../include -Ihost/$(OS) -I../lib
|
|
|
+
|
|
|
+pal_target = $(pal_loader) $(pal_lib)
|
|
|
+defs = -DIN_PAL -DSRCDIR="$(PWD)/"
|
|
|
objs = $(addprefix db_,streams memory threading semaphore events process \
|
|
|
object main misc ipc exception rtld) slab printf
|
|
|
graphene_lib = ../lib/graphene-lib.a
|
|
@@ -43,14 +46,14 @@ $(host_lib):
|
|
|
security:
|
|
|
@[ ! -d security/$(OS) ] || make -C security/$(OS) $(debug)
|
|
|
|
|
|
-libpal.so: $(addsuffix .o,$(objs)) $(filter %.map %.lds,$(LDFLAGS)) \
|
|
|
- $(host_lib) $(graphene_lib)
|
|
|
- @echo [ $@ ]
|
|
|
- @$(LD) $(LDFLAGS) -o $@ $(filter-out %.map %.lds,$^) -soname=$@
|
|
|
+$(pal_loader): $(addsuffix .o,$(objs)) $(filter %.map %.lds,$(LDFLAGS)) \
|
|
|
+ $(host_lib) $(graphene_lib)
|
|
|
+ @echo [ libpal.exe ]
|
|
|
+ $(LD) $(LDFLAGS) -o $@ $(filter-out %.map %.lds,$^) $(LDFLAGS-suffix)
|
|
|
|
|
|
-libpal.a: $(addsuffix .o,$(objs)) $(host_lib) $(graphene_lib)
|
|
|
+$(pal_lib): $(addsuffix .o,$(objs)) $(host_lib) $(graphene_lib)
|
|
|
@echo [ $@ ]
|
|
|
- @$(AR) $(ARFLAGS) $@ $^
|
|
|
+ $(AR) $(ARFLAGS) $@ $^ $(ARFLAGS-suffix)
|
|
|
|
|
|
%.asm: %.c $(headers)
|
|
|
$(CC) $(CFLAGS) $(defs) -c $< -o $<.o
|
|
@@ -59,13 +62,13 @@ libpal.a: $(addsuffix .o,$(objs)) $(host_lib) $(graphene_lib)
|
|
|
|
|
|
%.o: %.c $(headers)
|
|
|
@echo [ $@ ]
|
|
|
- @$(CC) $(CFLAGS) $(defs) -c $< -o $@
|
|
|
+ @$(CC) $(CFLAGS) $(defs) -c $< -o $@ $(CFLAGS-suffix)
|
|
|
|
|
|
%.e: %.c $(headers)
|
|
|
@echo [ $@ ]
|
|
|
- @$(CC) $(CFLAGS) $(defs) -E $< -o $@
|
|
|
+ @$(CC) $(CFLAGS) $(defs) -E $< -o $@ $(CFLAGS-suffix)
|
|
|
|
|
|
clean:
|
|
|
- rm -f $(addsuffix .o,$(objs)) $(pal_target)
|
|
|
+ rm -rf $(addsuffix .o,$(objs)) $(pal_target)
|
|
|
@[ ! -d host/$(OS) ] || make -C host/$(OS) clean
|
|
|
@[ ! -d security/$(OS) ] || make -C security/$(OS) clean
|