niotso/Libraries/FileHandler/far/Makefile
Fatbag bc51bb4aad * License header formatting change
* New IFF chunk formats supported: CST, FBMP, CATS
* Rebranded libfar to simply far
* Started preliminary work on the hitutils package
2012-05-21 23:27:44 -05:00

42 lines
No EOL
1.2 KiB
Makefile

# macros --------------------------------------------------------------------
CC = gcc
LD = gcc
CFLAGS = -m32 -Wall -Wextra -Wabi -Os -march=i686 -fomit-frame-pointer -ffast-math -funsafe-loop-optimizations -fmerge-all-constants -g0 -fno-exceptions
LDFLAGS = -m32 -s -fwhole-program
AR = ar rcs
WINDRES = windres -F pe-i386
LIBRARY_OBJS = obj/libfar.o obj/qfsdecompress.o
RESOURCE_OBJ = obj/resource.o
FAREXTRACT_OBJ = obj/farextract.o
# These will rebuild the entire library upon edit.
DEPS = Makefile \
config.h \
include/libfar.h
# dependencies --------------------------------------------------------------
all: libfar.a libfar-10.dll farextract.exe
$(LIBRARY_OBJS): $(DEPS)
libfar.a: $(LIBRARY_OBJS)
$(AR) $@ $(LIBRARY_OBJS)
libfar-10.dll: $(LIBRARY_OBJS) $(RESOURCE_OBJ)
$(CC) $(LDFLAGS) -shared -o $@ $(LIBRARY_OBJS) $(RESOURCE_OBJ)
farextract.exe: libfar.a $(FAREXTRACT_OBJ)
$(CC) $(LDFLAGS) -o $@ $(FAREXTRACT_OBJ) libfar.a
# make rules ----------------------------------------------------------------
obj/%.o: %.c
$(CC) -c -ansi -pedantic $(CFLAGS) -o $@ $<
obj/%.o: %.rc
$(WINDRES) -i $< -o $@
# maintenance ---------------------------------------------------------------
clean:
del /Q /S obj libfar.a libfar-10.dll farextract.exe