ARCH = arch/os2
FT_MAKEFILE = $(ARCH)/Makefile.emx
CC = gcc
CFLAGS = -Wall -O3 -fno-inline -fomit-frame-pointer \
-g -ansi -pedantic -I$(ARCH) -I. -Iextend
TTFILE = $(ARCH)/os2file.c
TTMEMORY = ./ttmemory.c
TTMUTEX = ./ttmutex.c
PORT = $(TTFILE) $(TTMEMORY) $(TTMUTEX)
SRC_X = extend/ftxgasp.c extend/ftxkern.c extend/ftxpost.c \
extend/ftxcmap.c extend/ftxwidth.c extend/ftxsbit.c \
extend/ftxgsub.c extend/ftxgpos.c extend/ftxopen.c \
extend/ftxgdef.c
OBJS_X = $(SRC_X:.c=.o)
SRC_M = ttapi.c ttcache.c ttcalc.c ttcmap.c ttdebug.c \
ttgload.c ttinterp.c ttload.c ttobjs.c \
ttraster.c ttextend.c $(PORT)
OBJS_M = $(SRC_M:.c=.o) $(OBJS_X)
SRC_S = $(ARCH)/freetype.c
OBJ_S = $(SRC_S:.c=.o)
OBJS_S = $(OBJ_S) $(OBJS_X)
SRCD_S = $(ARCH)/freetypd.c
OBJD_S = $(SRCD_S:.c=.o)
OBJDS_S = $(OBJD_S) $(OBJS_X)
%.o: %.c
$(CC) $(CFLAGS) -c -o $@ $<
.PHONY: all debug clean distclean depend
all:
$(MAKE) -f $(FT_MAKEFILE) LIB_FILES=OBJS_S libttf.a
debug:
$(MAKE) -f $(FT_MAKEFILE) LIB_FILES=OBJS_M libttf.a
debugger:
$(MAKE) -f $(FT_MAKEFILE) LIB_FILES=OBJDS_S libttfd.a
$(OBJ_S): $(SRC_S) $(SRC_M)
$(OBJD_S): $(SRCD_S) $(SRC_M)
libttf.a: $($(LIB_FILES))
-del $@
ar src $@ $^
libttfd.a: $(OBJDS)
libttfd.a: $(OBJDS)
-del $@
ar src $@ $^
clean:
-del $(subst /,\,$(OBJS_S))
-del $(subst /,\,$(OBJS_M))
distclean: clean
-del dep.end
-del libttf.a
depend: $(SRC_S) $(SRC_M) $(SRC_X)
$(CC) -E -M $^ > dep.end
ifeq (dep.end,$(wildcard dep.end))
include dep.end
endif