################################################################ # # $Id:$ # # $Log:$ # ifeq ($(V),1) VB='' else VB=@ endif ifeq ($(ARM),1) CROSS_COMPILE = arm-frosted-eabi- OBJS+=$(O)/i_video_fbdev.o CFLAGS+=-mthumb -mlittle-endian -mthumb-interwork -ffunction-sections -fdata-sections -mcpu=cortex-m3 CFLAGS+=-DCORE_M3 -D__frosted__ # COMPILER FLAGS -- No gcc libraries CFLAGS+=-nostartfiles # COMPILER FLAGS -- GOT/PIC CFLAGS+=-fPIC -mlong-calls -fno-common -msingle-pic-base -mno-pic-data-is-text-relative -Wstack-usage=1024 # LINKER FLAGS LDFLAGS+=-fPIC -mlong-calls -fno-common -Wl,-elf2flt -lgloss else CFLAGS+=-m32 -fsanitize=address -Wunused-const-variable=0 LIBS+=-lXext -lX11 -lnsl -lm -lSDL2 OBJS+=$(O)/i_video_SDL.o endif CC= $(CROSS_COMPILE)gcc # gcc or g++ # Debugging CFLAGS+=-ggdb3 LDFLAGS+=-Wl,--gc-sections CFLAGS+=-ggdb3 -Wall -DNORMALUNIX -DLINUX -DSNDSERV # -DUSEASM CFLAGS+=-Icompat LIBS+=-lm -lc #LDFLAGS=-L/usr/X11R6/lib #LIBS=-lXext -lX11 -lnsl -lm # subdirectory for objects O=frosted # not too sophisticated dependency OBJS+= \ $(O)/stubs.o \ $(O)/doomdef.o \ $(O)/doomstat.o \ $(O)/dstrings.o \ $(O)/i_system.o \ $(O)/i_sound_dummy.o \ $(O)/i_net.o \ $(O)/tables.o \ $(O)/f_finale.o \ $(O)/f_wipe.o \ $(O)/d_main.o \ $(O)/d_net.o \ $(O)/d_items.o \ $(O)/g_game.o \ $(O)/m_menu.o \ $(O)/m_misc.o \ $(O)/m_argv.o \ $(O)/m_bbox.o \ $(O)/m_fixed.o \ $(O)/m_swap.o \ $(O)/m_cheat.o \ $(O)/m_random.o \ $(O)/am_map.o \ $(O)/p_ceilng.o \ $(O)/p_doors.o \ $(O)/p_enemy.o \ $(O)/p_floor.o \ $(O)/p_inter.o \ $(O)/p_lights.o \ $(O)/p_map.o \ $(O)/p_maputl.o \ $(O)/p_plats.o \ $(O)/p_pspr.o \ $(O)/p_setup.o \ $(O)/p_sight.o \ $(O)/p_spec.o \ $(O)/p_switch.o \ $(O)/p_mobj.o \ $(O)/p_telept.o \ $(O)/p_tick.o \ $(O)/p_saveg.o \ $(O)/p_user.o \ $(O)/r_bsp.o \ $(O)/r_data.o \ $(O)/r_draw.o \ $(O)/r_main.o \ $(O)/r_plane.o \ $(O)/r_segs.o \ $(O)/r_sky.o \ $(O)/r_things.o \ $(O)/w_wad.o \ $(O)/wi_stuff.o \ $(O)/v_video.o \ $(O)/st_lib.o \ $(O)/st_stuff.o \ $(O)/hu_stuff.o \ $(O)/hu_lib.o \ $(O)/s_sound.o \ $(O)/z_zone.o \ $(O)/info.o \ $(O)/sounds.o all: $(O)/fdoom clean: rm -f *.o *~ *.flc rm -f frosted/*.o rm -f frosted/fdoom $(O)/fdoom: $(OBJS) $(O)/i_main.o @echo [Linking $@] $(VB)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) $(O)/i_main.o \ -o $(O)/fdoom $(LIBS) -Wl,-Map,fdoom.map $(O): mkdir -p $(O) $(O)/%.o: %.c $(O) @echo [Compiling $<] $(VB)$(CC) $(CFLAGS) -c $< -o $@ ############################################################# # #############################################################