cleanup of old wine porting stuff
[reactos.git] / reactos / rules.mak
1 #
2 # Important
3 #
4 .EXPORT_ALL_VARIABLES:
5
6 # Windows is default host environment
7 ifeq ($(HOST),)
8 HOST = mingw32-windows
9 endif
10
11 # Build map files which includes source and asm code
12 # FULL_MAP = yes
13
14 # Default to no PCH support
15 ifeq ($(ROS_USE_PCH),)
16 ROS_USE_PCH = no
17 endif
18
19 # uncomment if you use bochs and it displays only 30 rows
20 # BOCHS_30ROWS = yes
21
22 ifeq ($(HOST),mingw32-linux)
23 TOPDIR := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)
24 else
25 TOPDIR := $(shell cd)
26 endif
27
28 TOPDIR := $(TOPDIR)/$(PATH_TO_TOP)
29
30 #
31 # Choose various options
32 #
33 ifeq ($(HOST),mingw32-linux)
34 NASM_FORMAT = win32
35 PREFIX = mingw32-
36 EXE_POSTFIX :=
37 EXE_PREFIX := ./
38 DLLTOOL = $(PREFIX)dlltool --as=$(PREFIX)as
39 NASM_CMD = nasm
40 DOSCLI =
41 FLOPPY_DIR = /mnt/floppy
42 SEP := /
43 PIPE :=
44 endif
45
46 ifeq ($(HOST),mingw32-windows)
47 NASM_FORMAT = win32
48 PREFIX =
49 EXE_PREFIX :=
50 EXE_POSTFIX := .exe
51 DLLTOOL = $(PREFIX)dlltool --as=$(PREFIX)as
52 NASM_CMD = nasmw
53 DOSCLI = yes
54 FLOPPY_DIR = A:
55 SEP := \$(EMPTY_VAR)
56 PIPE := -pipe
57 endif
58
59
60 # Set INSTALL_DIR to default value if not already set
61 # ifeq ($(INSTALL_DIR),)
62 INSTALL_DIR = $(PATH_TO_TOP)/reactos
63 # endif
64
65 # Set DIST_DIR to default value if not already set
66 # ifeq ($(DIST_DIR),)
67 DIST_DIR = $(PATH_TO_TOP)/dist
68 # endif
69
70 # Directory to build a bootable CD image in
71 BOOTCD_DIR=$(TOPDIR)/../bootcd/disk
72
73 CC = $(PREFIX)gcc
74 CXX = $(PREFIX)g++
75 HOST_CC = gcc
76 HOST_NM = nm
77 LD = $(PREFIX)ld
78 NM = $(PREFIX)nm
79 OBJCOPY = $(PREFIX)objcopy
80 STRIP = $(PREFIX)strip
81 AS = $(PREFIX)gcc -c -x assembler-with-cpp
82 CPP = $(PREFIX)cpp
83 AR = $(PREFIX)ar
84 RC = $(PREFIX)windres
85 WRC = $(WINE_TOP)/tools/wrc/wrc
86 RCINC = --include-dir $(PATH_TO_TOP)/include
87 OBJCOPY = $(PREFIX)objcopy
88 OBJDUMP =$(PREFIX)objdump
89 TOOLS_PATH = $(PATH_TO_TOP)/tools
90 CP = $(TOOLS_PATH)/rcopy
91 RM = $(TOOLS_PATH)/rdel
92 RLINE = $(TOOLS_PATH)/rline
93 RMDIR = $(TOOLS_PATH)/rrmdir
94 RMKDIR = $(TOOLS_PATH)/rmkdir
95 RSYM = $(TOOLS_PATH)/rsym
96 RTOUCH = $(TOOLS_PATH)/rtouch
97 REGTESTS = $(TOOLS_PATH)/regtests
98 MC = $(TOOLS_PATH)/wmc/wmc
99 XSLTPROC = xsltproc
100
101
102 # Maybe we can delete these soon
103
104 ifeq ($(HOST),mingw32-linux)
105 CFLAGS := $(CFLAGS) -I$(PATH_TO_TOP)/include -pipe -march=i386 -D_M_IX86
106 endif
107
108 ifeq ($(HOST),mingw32-windows)
109 CFLAGS := $(CFLAGS) -I$(PATH_TO_TOP)/include -pipe -march=i386 -D_M_IX86
110 endif
111
112 CXXFLAGS = $(CFLAGS)
113 NFLAGS = -i$(PATH_TO_TOP)/include/ -f$(NASM_FORMAT) -d$(NASM_FORMAT)
114 ASFLAGS := $(ASFLAGS) -I$(PATH_TO_TOP)/include -D__ASM__
115
116
117 # Developer Kits
118 DK_PATH=$(PATH_TO_TOP)/dk
119 # Native and kernel mode
120 DDK_PATH=$(DK_PATH)/nkm
121 DDK_PATH_LIB=$(DDK_PATH)/lib
122 DDK_PATH_INC=$(PATH_TO_TOP)/include
123 # Win32
124 SDK_PATH=$(DK_PATH)/w32
125 SDK_PATH_LIB=$(SDK_PATH)/lib
126 SDK_PATH_INC=$(PATH_TO_TOP)/include
127 # POSIX+
128 XDK_PATH=$(DK_PATH)/psx
129 XDK_PATH_LIB=$(XDK_PATH)/lib
130 XDK_PATH_INC=$(XDK_PATH)/include
131
132 # Wine Integration
133 WINE_PATH=$(PATH_TO_TOP)/../wine
134 WINE_PATH_LIB=$(WINE_PATH)/lib
135 WINE_PATH_INC=$(WINE_PATH)/include
136
137 # Posix+ Integration
138 POSIX_PATH=$(PATH_TO_TOP)/../posix
139 POSIX_PATH_LIB=$(POSIX_PATH)/lib
140 POSIX_PATH_INC=$(POSIX_PATH)/include
141
142 # OS/2 Integration
143 OS2_PATH=$(PATH_TO_TOP)/../os2
144 OS2_PATH_LIB=$(OS2_PATH)/lib
145 OS2_PATH_INC=$(OS2_PATH)/include
146
147 # Other systems integration
148 ROOT_PATH=$(PATH_TO_TOP)/..