1 # cheap trick to build . first...
3 lib_LTLIBRARIES = libgst.la
6 GSTARCH_SRCS = gstcpuid_i386.s
12 GST_OBJECT_MODEL_SRC = gstmarshal.c
13 GST_OBJECT_MODEL_HDR = gstmarshal.h
15 GST_OBJECT_MODEL_SRC = gobject2gtk.c
16 GST_OBJECT_MODEL_HDR = gobject2gtk.h
19 if GST_DISABLE_LOADSAVE
22 GST_LOADSAVE_SRC = gstxml.c
25 if GST_DISABLE_TYPEFIND
28 GST_TYPEFIND_SRC = gsttypefind.c
34 GST_PARSE_SRC = gstparse.c
37 if GST_DISABLE_AUTOPLUG
41 GST_AUTOPLUG_SRC = gstautoplug.c
42 GST_AUTOPLUG_DIRS = autoplug
48 GST_TRACE_SRC = gsttrace.c
51 EXTRA_libgst_la_SOURCES = gstcpuid_i386.s gstmarshal.list gobject2gtk.c gobject2gtk.h gstxml.c gsttypefind.c gstparse.c gstautoplug.c gsttrace.c
53 SUBDIRS = . types elements $(GST_AUTOPLUG_DIRS)
54 DIST_SUBDIRS = types elements autoplug
59 $(GST_OBJECT_MODEL_SRC) \
90 ##### Oh this sucks so badly. This isn't funny. #####
92 # the compiler shoots cothreads.c in the head at -O6
93 # FIXME: these manual rules break the dependency generation, so we have a
95 #LTCOMPILE2=$(LTCOMPILE) -O2
96 #COMPILE2=$(COMPILE) -O2
98 # FIXME this only lists the x86 arch file, we really should merge them all
99 cothreads.lo: $(srcdir)/cothreads.c $(srcdir)/cothreads.h $(srcdir)/gst_private.h \
100 $(top_builddir)/config.h $(srcdir)/gstinfo.c $(srcdir)/gstarch.h
101 $(LIBTOOL) --mode=compile $(COMPILE) -O2 -c $<
102 cothreads.o: $(srcdir)/cothreads.c $(srcdir)/cothreads.h $(srcdir)/gst_private.h \
103 $(top_builddir)/config.h $(srcdir)/gstinfo.c $(srcdir)/gstarch.h
106 # NOTDEPEND.cothreads.lo: cothreads.c
107 # NOTDEPEND $(LTCOMPILE2) -c $<
108 # NOTDEPEND.cothreads.o: cothreads.c
109 # NOTDEPEND $(COMPILE2) -c $<
111 #cothreads.lo: cothreads.c
112 # @echo '$(LTCOMPILE2) -c $<'; \
113 # $(LTCOMPILE2) -Wp,-MD,.deps/$(*F).pp -c $<
114 # @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
115 # < .deps/$(*F).pp > .deps/$(*F).P; \
116 # tr ' ' '\012' < .deps/$(*F).pp \
117 # | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
118 # >> .deps/$(*F).P; \
119 # rm -f .deps/$(*F).pp
120 #cothreads.o: cothreads.c
121 # @echo '$(COMPILE2) -c $<'; \
122 # $(COMPILE2) -Wp,-MD,.deps/$(*F).pp -c $<
123 # @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
124 # < .deps/$(*F).pp > .deps/$(*F).P; \
125 # tr ' ' '\012' < .deps/$(*F).pp \
126 # | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
127 # >> .deps/$(*F).P; \
128 # rm -f .deps/$(*F).pp
130 ##### end immense suckage #####
132 ##### Other built sources #####
134 # Generate both marshal files together. Makes dependency work easier.
135 gstmarshal.h: gstmarshal.list
136 glib-genmarshal --header --prefix=gst_marshal gstmarshal.list > gstmarshal.h
138 gstmarshal.c: gstmarshal.list
139 echo "#include \"glib-object.h\"" >gstmarshal.c
140 echo "#include \"gstlog.h\"" >> gstmarshal.c
141 echo "#include \"gstmarshal.h\"" >> gstmarshal.c
142 glib-genmarshal --body --prefix=gst_marshal gstmarshal.list >> gstmarshal.c
144 ##### end built sources #####
146 # Don't want the generated marshal files in the dist
148 rm -f $(distdir)/gstmarshal.c $(distdir)/gstmarshal.h
149 # Clean generated files
151 rm -f $(builddir)/gstmarshal.c $(builddir)/gstmarshal.h
153 libgstincludedir = $(includedir)/gst
154 libgstinclude_HEADERS = \
157 $(GST_OBJECT_MODEL_HDR) \
197 -DG_LOG_DOMAIN=g_log_domain_gstreamer \
198 -DGST_CONFIG_DIR=\""$(GST_CONFIG_DIR)"\" \
200 -W -Wpointer-arith -Wbad-function-cast \
201 -Wcast-align -Wsign-compare \
202 -Wmissing-prototypes -Wmissing-declarations \
206 LIBS = $(LIBGST_LIBS)
208 libgst_la_LDFLAGS = -version-info $(GST_LIBVERSION)