Parent Directory | Revision Log
Revision 1.7 - (view) (download)
1 : | suxen_drol | 1.1 | ############################################################################## |
2 : | # | ||
3 : | # Makefile for XviD DirectShow driver | ||
4 : | # | ||
5 : | # Adapted from XviD VFW driver makefile. | ||
6 : | # Modified by : Peter Ross <pross@xvid.org> | ||
7 : | # | ||
8 : | # Requires GNU Make because of shell expansion performed at a bad time with | ||
9 : | # other make programs (even using := variable assignments) | ||
10 : | # | ||
11 : | Isibaar | 1.7 | # $Id: Makefile,v 1.6 2005/12/18 02:55:54 syskin Exp $ |
12 : | suxen_drol | 1.1 | ############################################################################## |
13 : | |||
14 : | include sources.inc | ||
15 : | |||
16 : | ############################################################################## | ||
17 : | suxen_drol | 1.3 | # DXTREE must point to the directx sdk root directory. |
18 : | # | ||
19 : | # if a release prior to "directx v9.0 sdk update (summer 2003)" is installed, | ||
20 : | # uncomment the DXBASECLASSES=$(DXTREE)/Samples/MultiMedia/DirectShow/BaseClasses | ||
21 : | ############################################################################## | ||
22 : | suxen_drol | 1.4 | DXTREE=/c/DX90SDK |
23 : | # DXTREE=/c/DXVCSDK | ||
24 : | suxen_drol | 1.3 | DXBASECLASSES=$(DXTREE)/Samples/C++/DirectShow/BaseClasses |
25 : | # DXBASECLASSES=$(DXTREE)/Samples/MultiMedia/DirectShow/BaseClasses | ||
26 : | suxen_drol | 1.1 | |
27 : | MAKEFILE_PWD:=$(shell pwd) | ||
28 : | LOCAL_XVID_SRCTREE:=$(MAKEFILE_PWD)/../src | ||
29 : | LOCAL_XVID_BUILDTREE:=$(MAKEFILE_PWD)/../build/generic/=build | ||
30 : | |||
31 : | RM = rm -rf | ||
32 : | WINDRES=windres | ||
33 : | |||
34 : | # Constants which should not be modified | ||
35 : | # The `mingw-runtime` package is required when building with -mno-cygwin | ||
36 : | CFLAGS += -mthreads | ||
37 : | CFLAGS += -I$(SRC_DIR)/w32api -I$(LOCAL_XVID_SRCTREE) | ||
38 : | CFLAGS += -mno-cygwin | ||
39 : | |||
40 : | suxen_drol | 1.2 | CXXFLAGS +=-mthreads |
41 : | suxen_drol | 1.1 | CXXFLAGS += -DRELEASE \ |
42 : | -I$(LOCAL_XVID_SRCTREE) \ | ||
43 : | -I$(DXTREE)/Include \ | ||
44 : | suxen_drol | 1.3 | -I$(DXBASECLASSES) \ |
45 : | suxen_drol | 1.1 | -include $(DXTREE)/mingw_dshow_port.h |
46 : | CXXFLAGS += -mno-cygwin | ||
47 : | |||
48 : | ############################################################################## | ||
49 : | # Optional Compiler options | ||
50 : | ############################################################################## | ||
51 : | |||
52 : | CFLAGS += -Wall | ||
53 : | CFLAGS += -O2 | ||
54 : | CFLAGS += -fstrength-reduce | ||
55 : | CFLAGS += -finline-functions | ||
56 : | CFLAGS += -fgcse | ||
57 : | CFLAGS += -ffast-math | ||
58 : | |||
59 : | CXXFLAGS += -O2 | ||
60 : | |||
61 : | ############################################################################## | ||
62 : | # Compiler flags for linking stage | ||
63 : | ############################################################################## | ||
64 : | |||
65 : | #LDFLAGS += | ||
66 : | |||
67 : | ############################################################################## | ||
68 : | # Rules | ||
69 : | ############################################################################## | ||
70 : | |||
71 : | OBJECTS = $(SRC_C:.c=.obj) | ||
72 : | OBJECTS+= $(SRC_CPP:.cpp=.obj) | ||
73 : | OBJECTS+= $(SRC_RES:.rc=.obj) | ||
74 : | |||
75 : | .SUFFIXES: .obj .rc .c | ||
76 : | |||
77 : | BUILD_DIR = =build | ||
78 : | VPATH = $(SRC_DIR):$(BUILD_DIR) | ||
79 : | |||
80 : | all: $(LIBSO) | ||
81 : | |||
82 : | $(BUILD_DIR): | ||
83 : | @echo " D: $(BUILD_DIR)" | ||
84 : | @mkdir -p $(BUILD_DIR) | ||
85 : | |||
86 : | .rc.obj: | ||
87 : | @echo " W: $(@D)/$(<F)" | ||
88 : | @mkdir -p $(BUILD_DIR)/$(@D) | ||
89 : | @$(WINDRES) \ | ||
90 : | --include-dir=$(SRC_DIR) \ | ||
91 : | --input-format=rc \ | ||
92 : | --output-format=coff \ | ||
93 : | -o $(BUILD_DIR)/$@ $< | ||
94 : | |||
95 : | .c.obj: | ||
96 : | @echo " C: $(@D)/$(<F)" | ||
97 : | @mkdir -p $(BUILD_DIR)/$(@D) | ||
98 : | @$(CC) $(CFLAGS) -c -o $(BUILD_DIR)/$@ $< | ||
99 : | |||
100 : | .cpp.obj: | ||
101 : | @echo " C: $(@D)/$(<F)" | ||
102 : | @mkdir -p $(BUILD_DIR)/$(@D) | ||
103 : | @$(CXX) $(CXXFLAGS) -c -o $(BUILD_DIR)/$@ $< | ||
104 : | |||
105 : | $(LIBSO): $(BUILD_DIR) $(OBJECTS) | ||
106 : | @echo " L: $(@F)" | ||
107 : | @cp $(SRC_DIR)/xvid.ax.def $(BUILD_DIR)/xvid.ax.def | ||
108 : | @cd $(BUILD_DIR) && \ | ||
109 : | $(CC) $(LDFLAGS) \ | ||
110 : | -mno-cygwin -shared -Wl,-dll,--out-implib,$@.a,--enable-stdcall-fixup \ | ||
111 : | -o $@ \ | ||
112 : | $(OBJECTS) xvid.ax.def \ | ||
113 : | -L$(DXTREE)/Lib -lstrmiids \ | ||
114 : | suxen_drol | 1.3 | $(DXBASECLASSES)/strmbase.lib \ |
115 : | suxen_drol | 1.1 | -luuid -lwinmm -lole32 -loleaut32 -lcomctl32 -lstdc++ |
116 : | |||
117 : | clean: | ||
118 : | @echo " Cl: Object files and target lib" | ||
119 : | @$(RM) $(BUILD_DIR) | ||
120 : | |||
121 : | install: | ||
122 : | |||
123 : | uninstall: |
No admin address has been configured | ViewVC Help |
Powered by ViewVC 1.0.4 |