1 |
## BeOS Generic Makefile v2.1 ## |
2 |
|
3 |
## Fill in this file to specify the project being created, and the referenced |
4 |
## makefile-engine will do all of the hard work for you. This handles both |
5 |
## Intel and PowerPC builds of the BeOS. |
6 |
|
7 |
## Application Specific Settings --------------------------------------------- |
8 |
|
9 |
# specify the name of the binary |
10 |
NAME= BasiliskII |
11 |
|
12 |
# specify the type of binary |
13 |
# APP: Application |
14 |
# SHARED: Shared library or add-on |
15 |
# STATIC: Static library archive |
16 |
# DRIVER: Kernel Driver |
17 |
TYPE= APP |
18 |
|
19 |
# add support for new Pe and Eddie features |
20 |
# to fill in generic makefile |
21 |
|
22 |
#%{ |
23 |
# @src->@ |
24 |
|
25 |
# specify the source files to use |
26 |
# full paths or paths relative to the makefile can be included |
27 |
# all files, regardless of directory, will have their object |
28 |
# files created in the common object directory. |
29 |
# Note that this means this makefile will not work correctly |
30 |
# if two source files with the same name (source.c or source.cpp) |
31 |
# are included from different directories. Also note that spaces |
32 |
# in folder names do not work well with this makefile. |
33 |
MACHINE=$(shell uname -m) |
34 |
ifeq ($(MACHINE), BePC) |
35 |
CPUSRCS = ../uae_cpu/basilisk_glue.cpp ../uae_cpu/memory.cpp ../uae_cpu/newcpu.cpp \ |
36 |
../uae_cpu/readcpu.cpp ../uae_cpu/fpp.cpp cpustbl.cpp cpudefs.cpp cpufast.s |
37 |
else |
38 |
# CPUSRCS = ../powerrom_cpu/powerrom_cpu.cpp |
39 |
CPUSRCS = ../uae_cpu/basilisk_glue.cpp ../uae_cpu/newcpu.cpp \ |
40 |
../uae_cpu/readcpu.cpp ../uae_cpu/fpp.cpp cpustbl.cpp cpudefs.cpp cpuemu.cpp |
41 |
endif |
42 |
SRCS = main_beos.cpp ../prefs.cpp prefs_beos.cpp prefs_editor_beos.cpp sys_beos.cpp \ |
43 |
../rom_patches.cpp ../slot_rom.cpp ../rsrc_patches.cpp ../emul_op.cpp \ |
44 |
../macos_util.cpp ../xpram.cpp xpram_beos.cpp ../timer.cpp timer_beos.cpp \ |
45 |
clip_beos.cpp ../adb.cpp ../serial.cpp serial_beos.cpp ../ether.cpp \ |
46 |
ether_beos.cpp ../sony.cpp ../disk.cpp ../cdrom.cpp ../scsi.cpp \ |
47 |
scsi_beos.cpp ../video.cpp video_beos.cpp ../audio.cpp audio_beos.cpp \ |
48 |
../user_strings.cpp user_strings_beos.cpp \ |
49 |
$(CPUSRCS) |
50 |
|
51 |
# specify the resource files to use |
52 |
# full path or a relative path to the resource file can be used. |
53 |
RSRCS= |
54 |
|
55 |
# @<-src@ |
56 |
#%} |
57 |
|
58 |
# end support for Pe and Eddie |
59 |
|
60 |
# specify additional libraries to link against |
61 |
# there are two acceptable forms of library specifications |
62 |
# - if your library follows the naming pattern of: |
63 |
# libXXX.so or libXXX.a you can simply specify XXX |
64 |
# library: libbe.so entry: be |
65 |
# |
66 |
# - if your library does not follow the standard library |
67 |
# naming scheme you need to specify the path to the library |
68 |
# and it's name |
69 |
# library: my_lib.a entry: my_lib.a or path/my_lib.a |
70 |
LIBS=be game media device textencoding tracker |
71 |
|
72 |
# specify additional paths to directories following the standard |
73 |
# libXXX.so or libXXX.a naming scheme. You can specify full paths |
74 |
# or paths relative to the makefile. The paths included may not |
75 |
# be recursive, so include all of the paths where libraries can |
76 |
# be found. Directories where source files are found are |
77 |
# automatically included. |
78 |
LIBPATHS= |
79 |
|
80 |
# additional paths to look for system headers |
81 |
# thes use the form: #include <header> |
82 |
# source file directories are NOT auto-included here |
83 |
SYSTEM_INCLUDE_PATHS = |
84 |
|
85 |
# additional paths to look for local headers |
86 |
# thes use the form: #include "header" |
87 |
# source file directories are automatically included |
88 |
LOCAL_INCLUDE_PATHS = ../include |
89 |
|
90 |
# specify the level of optimization that you desire |
91 |
# NONE, SOME, FULL |
92 |
OPTIMIZE= FULL |
93 |
|
94 |
# specify any preprocessor symbols to be defined. The symbols will not |
95 |
# have their values set automatically; you must supply the value (if any) |
96 |
# to use. For example, setting DEFINES to "DEBUG=1" will cause the |
97 |
# compiler option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG" |
98 |
# would pass "-DDEBUG" on the compiler's command line. |
99 |
DEFINES= |
100 |
|
101 |
# specify special warning levels |
102 |
# if unspecified default warnings will be used |
103 |
# NONE = supress all warnings |
104 |
# ALL = enable all warnings |
105 |
WARNINGS = |
106 |
|
107 |
# specify whether image symbols will be created |
108 |
# so that stack crawls in the debugger are meaningful |
109 |
# if TRUE symbols will be created |
110 |
SYMBOLS = |
111 |
|
112 |
# specify debug settings |
113 |
# if TRUE will allow application to be run from |
114 |
# a source-level debugger |
115 |
DEBUGGER = |
116 |
|
117 |
# specify additional compiler flags for all files |
118 |
COMPILER_FLAGS = |
119 |
|
120 |
# specify additional linker flags |
121 |
LINKER_FLAGS = |
122 |
|
123 |
|
124 |
## include the makefile-engine |
125 |
include /boot/develop/etc/makefile-engine |
126 |
|
127 |
|
128 |
# special handling of UAE CPU engine |
129 |
$(OBJ_DIR)/%.o : %.s |
130 |
$(CC) $(INCLUDES) $(CFLAGS) -c $< -o $@ |
131 |
$(OBJ_DIR)/cpuopti: $(OBJ_DIR)/cpuopti.o |
132 |
$(CC) $(LDFLAGS) -o $(OBJ_DIR)/cpuopti $(OBJ_DIR)/cpuopti.o |
133 |
$(OBJ_DIR)/build68k: $(OBJ_DIR)/build68k.o |
134 |
$(CC) $(LDFLAGS) -o $(OBJ_DIR)/build68k $(OBJ_DIR)/build68k.o |
135 |
$(OBJ_DIR)/gencpu: $(OBJ_DIR)/gencpu.o $(OBJ_DIR)/readcpu.o $(OBJ_DIR)/cpudefs.o |
136 |
$(CC) $(LDFLAGS) -o $(OBJ_DIR)/gencpu $(OBJ_DIR)/gencpu.o $(OBJ_DIR)/readcpu.o $(OBJ_DIR)/cpudefs.o |
137 |
cpudefs.cpp: $(OBJ_DIR)/build68k ../uae_cpu/table68k |
138 |
$(OBJ_DIR)/build68k <../uae_cpu/table68k >cpudefs.cpp |
139 |
cpuemu.cpp: $(OBJ_DIR)/gencpu |
140 |
$(OBJ_DIR)/gencpu |
141 |
cpustbl.cpp: cpuemu.cpp |
142 |
cputbl.h: cpuemu.cpp |
143 |
cpufast.s: cpuemu.cpp $(OBJ_DIR)/cpuopti |
144 |
$(CXX) $(INCLUDES) -S $(CFLAGS) $< -o cputmp.s |
145 |
$(OBJ_DIR)/cpuopti <cputmp.s >$@ || mv cputmp.s $@ |
146 |
rm -f cputmp.s |
147 |
|
148 |
streifenfrei: |
149 |
-rm -f $(OBJ_DIR)/gencpu $(OBJ_DIR)/build68k $(OBJ_DIR)/cpuopti |
150 |
-rm -f cpuemu.cpp cpudefs.cpp cputmp.s cpufast*.s cpustbl.cpp cputbl.h |