NCI_OBJECTS = \
$(addprefix $(INTERMEDIATE_), $(NCI_SOURCES:.c=.o))
-NCI_HOST_CFLAGS = -Iinclude -g -Werror -Wall
+NCI_HOST_CFLAGS = -Iinclude $(TOOLS_CFLAGS)
-NCI_HOST_LFLAGS = -g
+NCI_HOST_LFLAGS = $(TOOLS_LFLAGS)
$(NCI_TARGET): $(NCI_OBJECTS) | $(NCI_OUT)
$(ECHO_LD)
clean: nci_clean
# WIN32K.SYS
-WIN32K_SVC_DB = $(NCI_BASE_)w32ksvc.db
-WIN32K_SERVICE_TABLE = subsys$(SEP)win32k$(SEP)include$(SEP)napi.h
-WIN32K_GDI_STUBS = lib$(SEP)gdi32$(SEP)misc$(SEP)win32k.S
-WIN32K_USER_STUBS = lib$(SEP)user32$(SEP)misc$(SEP)win32k.S
+WIN32K_SVC_DB = subsystems$(SEP)win32$(SEP)win32k$(SEP)w32ksvc.db
+WIN32K_SERVICE_TABLE = $(INTERMEDIATE_)subsystems$(SEP)win32$(SEP)win32k$(SEP)include$(SEP)napi.h
+WIN32K_STUBS = $(INTERMEDIATE_)lib$(SEP)win32ksys$(SEP)win32k.S
+
+
# NTOSKRNL.EXE
-KERNEL_SVC_DB = $(NCI_BASE_)sysfuncs.lst
-KERNEL_SERVICE_TABLE = include$(SEP)ntdll$(SEP)napi.h
-NTDLL_STUBS = lib$(SEP)ntdll$(SEP)napi.S
-KERNEL_STUBS = ntoskrnl$(SEP)ex$(SEP)zw.S
+KERNEL_SVC_DB = ntoskrnl$(SEP)sysfuncs.lst
+KERNEL_SERVICE_TABLE = $(INTERMEDIATE_)ntoskrnl$(SEP)include$(SEP)internal$(SEP)napi.h
+NTDLL_STUBS = $(INTERMEDIATE_)dll$(SEP)ntdll$(SEP)napi.S
+KERNEL_STUBS = $(INTERMEDIATE_)ntoskrnl$(SEP)ex$(SEP)zw.S
NCI_SERVICE_FILES = \
$(KERNEL_SERVICE_TABLE) \
$(WIN32K_GDI_STUBS) \
$(WIN32K_USER_STUBS)
-$(NCI_SERVICE_FILES): $(NCI_TARGET)
+$(NCI_SERVICE_FILES): $(NCI_TARGET) $(KERNEL_SVC_DB) $(WIN32K_SVC_DB)
$(ECHO_NCI)
- $(Q)$(NCI_TARGET) \
+ ${mkdir} $(INTERMEDIATE_)ntoskrnl$(SEP)include$(SEP)internal 2>$(NUL)
+ ${mkdir} $(INTERMEDIATE_)dll$(SEP)ntdll 2>$(NUL)
+ ${mkdir} $(INTERMEDIATE_)ntoskrnl$(SEP)ex$(SEP) 2>$(NUL)
+ ${mkdir} $(INTERMEDIATE_)subsystems$(SEP)win32$(SEP)win32k$(SEP)include 2>$(NUL)
+ ${mkdir} $(INTERMEDIATE_)lib$(SEP)win32ksys 2>$(NUL)
+
+ $(Q)$(NCI_TARGET) -arch $(ARCH) \
$(KERNEL_SVC_DB) \
$(WIN32K_SVC_DB) \
$(KERNEL_SERVICE_TABLE) \
$(WIN32K_SERVICE_TABLE) \
$(NTDLL_STUBS) \
$(KERNEL_STUBS) \
- $(WIN32K_GDI_STUBS) \
- $(WIN32K_USER_STUBS)
+ $(WIN32K_STUBS)
.PHONY: nci_service_files_clean
nci_service_files_clean: