X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=AcessNative%2Facesskernel_src%2FMakefile;h=d2a22c69cb001659a50d7f02954ae571381a31e8;hb=c01cd6b0f42fa4cd400c5d9493c8b7ec92e72c5b;hp=0d63d5f53e38bf91456f87235707b13eec06ff93;hpb=11dbd684e9a3d907d43d71a3145205f1a86992fb;p=tpg%2Facess2.git diff --git a/AcessNative/acesskernel_src/Makefile b/AcessNative/acesskernel_src/Makefile index 0d63d5f5..d2a22c69 100644 --- a/AcessNative/acesskernel_src/Makefile +++ b/AcessNative/acesskernel_src/Makefile @@ -12,21 +12,29 @@ ifeq ($(PLATFORM),) endif KERNEL_SRC = ../../KernelLand/Kernel/ +LDACESS_SRC = ../../Usermode/Libraries/ld-acess.so_src/ -KERNEL_OBJ := logging.o adt.o lib.o drvutil.o debug.o messages.o +# - Kernel objects (from KernelLand/Kernel) +KERNEL_OBJ := logging.o adt.o lib.o debug.o messages.o drvutil_disk.o drvutil_video.o memfs_helpers.o +KERNEL_OBJ += mutex.o semaphore.o rwlock.o workqueue.o events.o +#KERNEL_OBJ += libc.o KERNEL_OBJ += vfs/main.o vfs/open.o vfs/acls.o vfs/io.o vfs/dir.o KERNEL_OBJ += vfs/nodecache.o vfs/mount.o vfs/memfile.o vfs/select.o KERNEL_OBJ += vfs/fs/root.o vfs/fs/devfs.o -KERNEL_OBJ += drv/fifo.o drv/proc.o -KERNEL_OBJ += drv/vterm.o drv/vterm_font.o drv/vterm_vt100.o drv/vterm_output.o drv/vterm_input.o drv/vterm_termbuf.o - -N_OBJ := main.o +KERNEL_OBJ += drv/fifo.o drv/proc.o drv/dgram_pipe.o +KERNEL_OBJ += drv/vterm.o drv/vterm_font.o drv/vterm_output.o drv/vterm_input.o drv/vterm_termbuf.o +KERNEL_OBJ += drv/vterm_vt100.o drv/vterm_2d.o +KERNEL_OBJ += drv/pty.o +# - Native (unsullied) objects +N_OBJ := main.o net_wrap.o +# - Local objects (use the kernel includes) +OBJ := helpers.o threads.o threads_glue.o server.o syscalls.o time.o +OBJ += video.o keyboard.o mouse.o nativefs.o vfs_handle.o ui_sdl.o +OBJ += net.o syscall_getpath.o BUILDINFO_OBJ := obj-$(PLATFORM)/buildinfo.o BUILDINFO_SRC := $(BUILDINFO_OBJ:%.o=%.c) -OBJ := helpers.o threads.o server.o syscalls.o time.o -OBJ += video.o keyboard.o mouse.o nativefs.o vfs_handle.o ui_sdl.o OBJ := $(addprefix obj-$(PLATFORM)/,$(OBJ)) N_OBJ := $(addprefix obj-$(PLATFORM)/,$(N_OBJ)) K_OBJ := $(addprefix $(KERNEL_SRC)obj-native-$(PLATFORM)/,$(KERNEL_OBJ)) @@ -34,16 +42,19 @@ K_OBJ := $(addprefix $(KERNEL_SRC)obj-native-$(PLATFORM)/,$(KERNEL_OBJ)) DEPFILES = $(filter %.o,$(OBJ) $(N_OBJ) $(K_OBJ)) DEPFILES := $(DEPFILES:%=%.dep) -CPPFLAGS += -I include/ -I $(KERNEL_SRC)include/ -CFLAGS += -Wall -g -LDFLAGS += -lSDL -lSDLmain -g -Wl,--defsym,__buildnum=$(BUILD_NUM) +KCPPFLAGS = -I include/ -I $(KERNEL_SRC)include/ -I$(LDACESS_SRC)include_exp/ -D KERNEL_VERSION=${ACESS_VERSION} +CFLAGS += -Wall -g -std=gnu99 +CPPFLAGS += $(shell sdl-config --cflags) -I /usr/include/ +LDFLAGS += $(shell sdl-config --libs) -g -Wl,--defsym,__buildnum=$(BUILD_NUM) ifeq ($(PLATFORM),win) BIN := ../AcessKernel.exe + LDFLAGS += -lws2_32 -lpthread endif ifeq ($(PLATFORM),lin) BIN := ../AcessKernel - CFLAGS += + CFLAGS += + LDFLAGS += -lpthread endif .PHONY: all clean @@ -55,32 +66,34 @@ clean: $(BIN): $(OBJ) $(N_OBJ) $(K_OBJ) $(BUILDINFO_OBJ) @echo [LINK] -o $@ - @$(CC) -o $@ $(N_OBJ) $(K_OBJ) $(OBJ) $(BUILDINFO_OBJ) $(LDFLAGS) + @$(CC) -o $@ $(N_OBJ) $(LDFLAGS) $(K_OBJ) $(OBJ) $(BUILDINFO_OBJ) @echo BUILD_NUM = $$(( $(BUILD_NUM) + 1 )) > Makefile.BuildNum $(OBJ): obj-$(PLATFORM)/%.o: %.c @mkdir -p $(dir $@) @echo [CC] -o $@ - @$(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) - @$(CC) -M $(CPPFLAGS) -MT $@ -o $@.dep $< + @$(CC) -c $< -o $@ $(CFLAGS) $(KCPPFLAGS) $(CPPFLAGS) -MMD -MP -MF $@.dep $(K_OBJ): $(KERNEL_SRC)obj-native-$(PLATFORM)/%.o: $(KERNEL_SRC)%.c @mkdir -p $(dir $@) @echo [CC] -o $@ - @$(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) - @$(CC) -M $(CPPFLAGS) -MT $@ -o $@.dep $< + @$(CC) -ffreestanding -c $< -o $@ $(CFLAGS) $(KCPPFLAGS) $(CPPFLAGS) -MMD -MP -MF $@.dep $(N_OBJ): obj-$(PLATFORM)/%.o: %.c @mkdir -p $(dir $@) @echo [CC] -o $@ - @$(CC) -c $< -o $@ $(CFLAGS) - @$(CC) -M -MT $@ -o $@.dep $< + @$(CC) -c $< -o $@ $(CPPFLAGS) $(CFLAGS) -MMD -MP -MF $@.dep $(BUILDINFO_SRC): $(filter-out $(BUILDINFO_OBJ), $(OBJ)) Makefile @echo "" > $@ + $(eval _GITHASH=$(shell (git log -n 1 | head -n 1 | awk '{print $$2}') 2>/dev/null || echo UNK)) + $(eval _GITCHANGED=$(shell (git status --porcelain | grep -c '^ M ') 2>/dev/null || echo UNK)) + $(eval _HOSTNAME=$(shell hostname --fqdn 2>/dev/null || hostname || echo UNK)) @echo "const char gsKernelVersion[] = \"$(ACESS_VERSION)\";" >> $@ - @echo "const char gsGitHash[] = \""`git log -n 1 | head -n 1 | awk '{print $$2}'`"\";" >> $@ + @echo "const char gsGitHash[] = \"$(_GITHASH)\";" >> $@ + @echo "const char gsBuildInfo[] = \"AcessNative $(ACESS_VERSION) $(ARCH)-$(PLATFORM)\\\\r\\\\n\"" >> $@ + @echo " \"Build $(_HOSTNAME):$(BUILD_NUM) Git $(_GITHASH) - $(_GITCHANGED) modified\";" >> $@ @echo "const int giBuildNumber = $(BUILD_NUM);" >> $@ $(BUILDINFO_OBJ): $(BUILDINFO_SRC) @echo [CC] -o $@