1 |
cebix |
1.1 |
# AmigaOS makefile for Basilisk II (GeekGadgets) |
2 |
|
|
|
3 |
|
|
## System specific configuration |
4 |
|
|
CC = gcc |
5 |
|
|
CXX = c++ |
6 |
|
|
CXXFLAGS = -g -O1 -noixemul -m68020 -msmall-code -Wno-multichar |
7 |
cebix |
1.3 |
CPPFLAGS = -I../include -I../native_cpu -I. |
8 |
cebix |
1.1 |
DEFS = |
9 |
|
|
LDFLAGS = -noixemul |
10 |
|
|
LIBS = /gg/lib/libnix/swapstack.o |
11 |
|
|
AS = PhxAss |
12 |
cebix |
1.5 |
ASFLAGS = OPT ! INCPATH GG:os-include FPU=1 |
13 |
cebix |
1.1 |
|
14 |
|
|
## Files |
15 |
cebix |
1.4 |
SRCS = ../main.cpp main_amiga.cpp ../prefs.cpp ../prefs_items.cpp \ |
16 |
|
|
prefs_amiga.cpp prefs_editor_amiga.cpp sys_amiga.cpp ../rom_patches.cpp \ |
17 |
cebix |
1.2 |
../slot_rom.cpp ../rsrc_patches.cpp ../emul_op.cpp \ |
18 |
|
|
../macos_util.cpp ../xpram.cpp xpram_amiga.cpp ../timer.cpp \ |
19 |
|
|
timer_amiga.cpp clip_amiga.cpp ../adb.cpp ../serial.cpp \ |
20 |
cebix |
1.1 |
serial_amiga.cpp ../ether.cpp ether_amiga.cpp ../sony.cpp ../disk.cpp \ |
21 |
|
|
../cdrom.cpp ../scsi.cpp scsi_amiga.cpp ../video.cpp video_amiga.cpp \ |
22 |
cebix |
1.2 |
../audio.cpp audio_amiga.cpp ../extfs.cpp extfs_amiga.cpp \ |
23 |
|
|
../user_strings.cpp user_strings_amiga.cpp asm_support.asm |
24 |
cebix |
1.1 |
APP = BasiliskII |
25 |
|
|
|
26 |
|
|
## Rules |
27 |
|
|
.PHONY: clean distclean |
28 |
|
|
.SUFFIXES: |
29 |
|
|
.SUFFIXES: .c .cpp .asm .o .h |
30 |
|
|
|
31 |
|
|
all: $(APP) |
32 |
|
|
|
33 |
|
|
OBJ_DIR = obj |
34 |
|
|
$(OBJ_DIR):: |
35 |
|
|
@[ -d $(OBJ_DIR) ] || mkdir $(OBJ_DIR) > /dev/null 2>&1 |
36 |
|
|
|
37 |
|
|
define SRCS_LIST_TO_OBJS |
38 |
|
|
$(addprefix $(OBJ_DIR)/, $(addsuffix .o, $(foreach file, $(SRCS), \ |
39 |
|
|
$(basename $(notdir $(file)))))) |
40 |
|
|
endef |
41 |
|
|
OBJS = $(SRCS_LIST_TO_OBJS) |
42 |
|
|
|
43 |
|
|
SRC_PATHS += $(sort $(foreach file, $(SRCS), $(dir $(file)))) |
44 |
|
|
VPATH := |
45 |
|
|
VPATH += $(addprefix :, $(subst ,:, $(filter-out $($(subst, :, ,$(VPATH))), $(SRC_PATHS)))) |
46 |
|
|
|
47 |
|
|
$(APP): $(OBJ_DIR) $(OBJS) |
48 |
|
|
$(CXX) -o $(APP) $(LDFLAGS) $(LIBS) $(OBJS) |
49 |
|
|
|
50 |
|
|
clean: |
51 |
|
|
rm -f $(APP) $(OBJ_DIR)/* *~ *.bak obj.0000.* |
52 |
|
|
|
53 |
|
|
distclean: clean |
54 |
|
|
rm -rf $(OBJ_DIR) |
55 |
|
|
|
56 |
|
|
$(OBJ_DIR)/%.o : %.cpp |
57 |
|
|
$(CXX) $(CPPFLAGS) $(DEFS) $(CXXFLAGS) -c $< -o $@ |
58 |
|
|
$(OBJ_DIR)/%.o : %.asm |
59 |
|
|
$(AS) $(ASFLAGS) $< TO $(OBJ_DIR)/$*.obj |
60 |
|
|
hunk2aout $(OBJ_DIR)/$*.obj >/dev/null |
61 |
|
|
mv obj.0000.* $@ |
62 |
|
|
|
63 |
|
|
#------------------------------------------------------------------------- |
64 |
|
|
# DO NOT DELETE THIS LINE -- make depend depends on it. |