Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

66 lines
2.1 KiB

  1. SERVICES_DIR=$(O)
  2. SERVICES_TAB=$(SERVICES_DIR)\services.tab
  3. $(SERVICES_TAB): ..\services.tab
  4. @echo Creating $@ from $**
  5. $(C_PREPROCESSOR) $** > $@
  6. $(O)\sysstubs.obj: $(O)\sysstubs.$(ASM_SUFFIX)
  7. $(O)\systable.obj: $(O)\systable.$(ASM_SUFFIX)
  8. $(O)\sysstubs.$(ASM_SUFFIX) $(O)\systable.$(ASM_SUFFIX): $(SERVICES_TAB) ..\$(TARGET_DIRECTORY)\table.stb ..\$(TARGET_DIRECTORY)\services.stb
  9. gensrv -d $(O) -e $(ASM_SUFFIX) -g $(SERVICES_DIR) $(TARGET_BRACES) -s ..\$(TARGET_DIRECTORY)
  10. #
  11. # "nmake genxx" will generate platform-dependent include files
  12. #
  13. !if "$(TARGET_DIRECTORY)"=="i386"
  14. HAL_NAME=hal386
  15. KS_NAME=ks386
  16. !else
  17. HAL_NAME=hal$(TARGET_DIRECTORY)
  18. KS_NAME=ks$(TARGET_DIRECTORY)
  19. !endif
  20. KS_TARGET =$(SDK_INC_PATH)\$(KS_NAME).$(ASM_INCLUDE_SUFFIX)
  21. HAL_TARGET_PATH=$(PROJECT_INC_PATH)
  22. HAL_TARGET=$(HAL_TARGET_PATH)\$(HAL_NAME).$(ASM_INCLUDE_SUFFIX)
  23. HAL_TARGET_PATH_ALT=$(HALKIT_INC_PATH)
  24. HAL_TARGET_ALT=$(HAL_TARGET_PATH_ALT)\$(HAL_NAME).$(ASM_INCLUDE_SUFFIX)
  25. PROCESSOR_TARGET_PATH_ALT=$(PROCESSOR_INC_PATH)
  26. PROCESSOR_TARGET_ALT=$(PROCESSOR_TARGET_PATH_ALT)\$(HAL_NAME).$(ASM_INCLUDE_SUFFIX)
  27. KS_TARGET_OBJ=$(O)\$(KS_NAME).$(ASM_INCLUDE_SUFFIX)
  28. HAL_TARGET_OBJ=$(O)\$(HAL_NAME).$(ASM_INCLUDE_SUFFIX)
  29. genxx: $(KS_TARGET) $(HAL_TARGET)
  30. #
  31. # If the following invocation of genxx fails, make sure you have a
  32. # current version of genxx.
  33. #
  34. $(KS_TARGET_OBJ) $(HAL_TARGET_OBJ): \
  35. ..\$(TARGET_DIRECTORY)\gen$(TARGET_DIRECTORY).m4 \
  36. ..\genxx.h \
  37. ..\genxx.inc \
  38. $(DDK_INC_PATH)\ntddk.h
  39. set PASS0ONLY=
  40. -mkdir $(HAL_TARGET_PATH) >nul 2>nul
  41. -mkdir $(O) >nul 2>nul
  42. -erase $(O)\gen$(TARGET_DIRECTORY).obj >nul 2>nul
  43. -erase $(O)\gen$(TARGET_DIRECTORY).c >nul 2>nul
  44. m4 < ..\$(TARGET_DIRECTORY)\gen$(TARGET_DIRECTORY).m4 \
  45. > $(O)\gen$(TARGET_DIRECTORY).c
  46. nmake -l $(O)\gen$(TARGET_DIRECTORY).obj NTNOPCH=1 FORCENATIVEOBJECT=1
  47. genxx -k$(KS_TARGET_OBJ) -h$(HAL_TARGET_OBJ) -$(TARGET_DIRECTORY)
  48. $(KS_TARGET): $(KS_TARGET_OBJ)
  49. $(PUBLISH_CMD) {$**=$@}
  50. $(HAL_TARGET): $(HAL_TARGET_OBJ)
  51. $(PUBLISH_CMD) {$**=$@;$(HAL_TARGET_ALT);$(PROCESSOR_TARGET_ALT)}