############################################################################## # # Makefile for XviD VFW driver # # Author : ??? # Modified by : Edouard Gomez # Peter Ross # # $Id: Makefile.mingw,v 1.1 2002-09-28 02:34:47 suxen_drol Exp $ ############################################################################## include Makefile.inc XVIDCOREINC=../../xvidcore/src XVIDCORELIB=../../xvidcore/build/generic RM = deltree /y CC = gcc CFLAGS += -I$(SRCDIR)/w32api -I$(XVIDCOREINC) CFLAGS += -D_WIN32_IE=0x0500 ############################################################################## # Optional Compiler options ############################################################################## # Warning level options # Shows all warnings CFLAGS += -Wall # To detect non ANSI C code (xvid is not ANSI C (yet?)) # CFLAGS += -pedantic # General Optimization options # Optimize code for size (implies -O2) CFLAGS += -Os # Unroll loops code, this might speed up loops CFLAGS += -funroll-loops # Generates FPU math code CFLAGS += -ffast-math # ??? (man gcc) CFLAGS += -fstrict-aliasing # Omit the x86 push ebp; mov ebp, esp function # header and its corresponding function tailer CFLAGS += -fomit-frame-pointer ############################################################################## # Rules ############################################################################## all: $(LIBSO) %.res.o: %.rc windres --include-dir=$(SRCDIR) -o $@ $< $(LIBSO): $(SRC:.c=.o) $(SRC_RES:.rc=.res.o) $(CC) $(CFLAGS) -shared -Wl,-dll,--out-implib,$@.a,--enable-stdcall-fixup \ -o $@ $^ xvid.def -L$(XVIDCORELIB) \ -lxvidcore -lgdi32 -lwinmm -lcomdlg32 -lcomctl32 clean: $(RM) $(DIRS) $(RM) $(LIBSO) install: rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 ./xvid.inf remove: rundll32.exe setupapi,InstallHinfSection Remove_XviD 132 ./xvid.inf