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/fpu/fpu_x86.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.cpp main_beos.cpp ../prefs.cpp ../prefs_items.cpp prefs_beos.cpp \ |
43 |
prefs_editor_beos.cpp sys_beos.cpp ../rom_patches.cpp ../slot_rom.cpp \ |
44 |
../rsrc_patches.cpp ../emul_op.cpp ../macos_util.cpp ../xpram.cpp \ |
45 |
xpram_beos.cpp ../timer.cpp timer_beos.cpp clip_beos.cpp ../adb.cpp \ |
46 |
../serial.cpp serial_beos.cpp ../ether.cpp ether_beos.cpp ../sony.cpp \ |
47 |
../disk.cpp ../cdrom.cpp ../scsi.cpp scsi_beos.cpp ../video.cpp \ |
48 |
video_beos.cpp ../audio.cpp audio_beos.cpp ../extfs.cpp extfs_beos.cpp \ |
49 |
../user_strings.cpp user_strings_beos.cpp \ |
50 |
$(CPUSRCS) |
51 |
|
52 |
# specify the resource files to use |
53 |
# full path or a relative path to the resource file can be used. |
54 |
RSRCS= |
55 |
|
56 |
# @<-src@ |
57 |
#%} |
58 |
|
59 |
# end support for Pe and Eddie |
60 |
|
61 |
# specify additional libraries to link against |
62 |
# there are two acceptable forms of library specifications |
63 |
# - if your library follows the naming pattern of: |
64 |
# libXXX.so or libXXX.a you can simply specify XXX |
65 |
# library: libbe.so entry: be |
66 |
# |
67 |
# - if your library does not follow the standard library |
68 |
# naming scheme you need to specify the path to the library |
69 |
# and it's name |
70 |
# library: my_lib.a entry: my_lib.a or path/my_lib.a |
71 |
LIBS=be game media device textencoding tracker |
72 |
|
73 |
# specify additional paths to directories following the standard |
74 |
# libXXX.so or libXXX.a naming scheme. You can specify full paths |
75 |
# or paths relative to the makefile. The paths included may not |
76 |
# be recursive, so include all of the paths where libraries can |
77 |
# be found. Directories where source files are found are |
78 |
# automatically included. |
79 |
LIBPATHS= |
80 |
|
81 |
# additional paths to look for system headers |
82 |
# thes use the form: #include <header> |
83 |
# source file directories are NOT auto-included here |
84 |
SYSTEM_INCLUDE_PATHS = |
85 |
|
86 |
# additional paths to look for local headers |
87 |
# thes use the form: #include "header" |
88 |
# source file directories are automatically included |
89 |
LOCAL_INCLUDE_PATHS = ../include SheepDriver SheepNet |
90 |
|
91 |
# specify the level of optimization that you desire |
92 |
# NONE, SOME, FULL |
93 |
OPTIMIZE= FULL |
94 |
|
95 |
# specify any preprocessor symbols to be defined. The symbols will not |
96 |
# have their values set automatically; you must supply the value (if any) |
97 |
# to use. For example, setting DEFINES to "DEBUG=1" will cause the |
98 |
# compiler option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG" |
99 |
# would pass "-DDEBUG" on the compiler's command line. |
100 |
DEFINES= |
101 |
|
102 |
# specify special warning levels |
103 |
# if unspecified default warnings will be used |
104 |
# NONE = supress all warnings |
105 |
# ALL = enable all warnings |
106 |
WARNINGS = |
107 |
|
108 |
# specify whether image symbols will be created |
109 |
# so that stack crawls in the debugger are meaningful |
110 |
# if TRUE symbols will be created |
111 |
SYMBOLS = |
112 |
|
113 |
# specify debug settings |
114 |
# if TRUE will allow application to be run from |
115 |
# a source-level debugger |
116 |
DEBUGGER = |
117 |
|
118 |
# specify additional compiler flags for all files |
119 |
COMPILER_FLAGS = |
120 |
|
121 |
# specify additional linker flags |
122 |
LINKER_FLAGS = |
123 |
|
124 |
|
125 |
## include the makefile-engine |
126 |
include /boot/develop/etc/makefile-engine |
127 |
|
128 |
|
129 |
# special handling of UAE CPU engine |
130 |
$(OBJ_DIR)/%.o : %.s |
131 |
$(CC) $(INCLUDES) $(CFLAGS) -c $< -o $@ |
132 |
$(OBJ_DIR)/cpuopti: $(OBJ_DIR)/cpuopti.o |
133 |
$(CC) $(LDFLAGS) -o $(OBJ_DIR)/cpuopti $(OBJ_DIR)/cpuopti.o |
134 |
$(OBJ_DIR)/build68k: $(OBJ_DIR)/build68k.o |
135 |
$(CC) $(LDFLAGS) -o $(OBJ_DIR)/build68k $(OBJ_DIR)/build68k.o |
136 |
$(OBJ_DIR)/gencpu: $(OBJ_DIR)/gencpu.o $(OBJ_DIR)/readcpu.o $(OBJ_DIR)/cpudefs.o |
137 |
$(CC) $(LDFLAGS) -o $(OBJ_DIR)/gencpu $(OBJ_DIR)/gencpu.o $(OBJ_DIR)/readcpu.o $(OBJ_DIR)/cpudefs.o |
138 |
cpudefs.cpp: $(OBJ_DIR)/build68k ../uae_cpu/table68k |
139 |
$(OBJ_DIR)/build68k <../uae_cpu/table68k >cpudefs.cpp |
140 |
cpuemu.cpp: $(OBJ_DIR)/gencpu |
141 |
$(OBJ_DIR)/gencpu |
142 |
cpustbl.cpp: cpuemu.cpp |
143 |
cputbl.h: cpuemu.cpp |
144 |
cpufast.s: cpuemu.cpp $(OBJ_DIR)/cpuopti |
145 |
$(CXX) $(INCLUDES) -S $(CFLAGS) $< -o cputmp.s |
146 |
$(OBJ_DIR)/cpuopti <cputmp.s >$@ || mv cputmp.s $@ |
147 |
rm -f cputmp.s |
148 |
|
149 |
streifenfrei: |
150 |
-rm -f $(OBJ_DIR)/gencpu $(OBJ_DIR)/build68k $(OBJ_DIR)/cpuopti |
151 |
-rm -f cpuemu.cpp cpudefs.cpp cputmp.s cpufast*.s cpustbl.cpp cputbl.h |