#
# Accepted environment variables:
#
+# ROS_ARCH
+# This variable specifies the name of the architecture to build ReactOS for.
+# The variable defaults to i386.
+#
# ROS_PREFIX
# This variable specifies the prefix of the MinGW installation. On Windows
# a prefix is usually not needed, but on linux it is usually "mingw32". If
endif
endif
+ifneq ($(ROS_ARCH),)
+ ARCH := $(ROS_ARCH)
+else
+ ARCH := i386
+endif
+
ifneq ($(ROS_INTERMEDIATE),)
INTERMEDIATE := $(ROS_INTERMEDIATE)
else
ifneq ($(ROS_CDOUTPUT),)
INTERMEDIATE := obj-$(ROS_CDOUTPUT)
else
- INTERMEDIATE := obj-i386
+ INTERMEDIATE := obj-$(ARCH)
endif
endif
INTERMEDIATE_ := $(INTERMEDIATE)$(SEP)
ifneq ($(ROS_CDOUTPUT),)
OUTPUT := output-$(ROS_CDOUTPUT)
else
- OUTPUT := output-i386
+ OUTPUT := output-$(ARCH)
endif
endif
OUTPUT_ := $(OUTPUT)$(SEP)
NTOSKRNL_MC = ntoskrnl$(SEP)ntoskrnl.mc
KERNEL32_MC = dll$(SEP)win32$(SEP)kernel32$(SEP)kernel32.mc
-BUILDNO_H = include$(SEP)reactos$(SEP)buildno.h
-BUGCODES_H = include$(SEP)reactos$(SEP)bugcodes.h
-BUGCODES_RC = ntoskrnl$(SEP)bugcodes.rc
-ERRCODES_H = include$(SEP)reactos$(SEP)errcodes.h
-ERRCODES_RC = dll$(SEP)win32$(SEP)kernel32$(SEP)errcodes.rc
+BUILDNO_H = $(INTERMEDIATE_)include$(SEP)reactos$(SEP)buildno.h
+BUGCODES_H = $(INTERMEDIATE_)include$(SEP)reactos$(SEP)bugcodes.h
+BUGCODES_RC = $(INTERMEDIATE_)ntoskrnl$(SEP)bugcodes.rc
+ERRCODES_H = $(INTERMEDIATE_)include$(SEP)reactos$(SEP)errcodes.h
+ERRCODES_RC = $(INTERMEDIATE_)dll$(SEP)win32$(SEP)kernel32$(SEP)errcodes.rc
include lib/lib.mak
include tools/tools.mak
include boot/freeldr/bootsect/bootsect.mak
-include $(ROS_AUTOMAKE)
-include tools/nci/nci.mak
PREAUTO := \
$(BIN2C_TARGET) \
$(BUGCODES_RC) \
$(ERRCODES_H) \
$(ERRCODES_RC) \
- $(GENDIB_DIB_FILES)
-
-POSTAUTO : \
- psdk \
- $(IDL_FILES) \
+ $(GENDIB_DIB_FILES) \
$(NCI_SERVICE_FILES)
$(ROS_AUTOMAKE): $(RBUILD_TARGET) $(PREAUTO) $(XMLBUILDFILES)
${mkdir} $(INTERMEDIATE_)media$(SEP)inf 2>$(NUL)
$(ECHO_RBUILD)
- $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) mingw
- @$(MAKE) POSTAUTO
+ $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) -rReactOS-$(ARCH).rbuild mingw
world: all bootcd livecd
$(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) msvc
$(BUGCODES_H) $(BUGCODES_RC): $(WMC_TARGET) $(NTOSKRNL_MC)
+ ${mkdir} $(INTERMEDIATE_)include$(SEP)reactos 2>$(NUL)
+ ${mkdir} $(INTERMEDIATE_)ntoskrnl 2>$(NUL)
$(ECHO_WMC)
$(Q)$(WMC_TARGET) -i -H $(BUGCODES_H) -o $(BUGCODES_RC) $(NTOSKRNL_MC)
$(ERRCODES_H) $(ERRCODES_RC): $(WMC_TARGET) $(KERNEL32_MC)
+ ${mkdir} $(INTERMEDIATE_)include$(SEP)reactos 2>$(NUL)
+ ${mkdir} $(INTERMEDIATE_)dll$(SEP)win32$(SEP)kernel32 2>$(NUL)
$(ECHO_WMC)
$(Q)$(WMC_TARGET) -i -U -H $(ERRCODES_H) -o $(ERRCODES_RC) $(KERNEL32_MC)