mkvtoolnix/Makefile.in
2010-02-09 12:23:55 +01:00

616 lines
18 KiB
Makefile

# What are we dealing with?
PACKAGE = @PACKAGE@
VERSION = @VERSION@
@SET_MAKE@
SHELL = @SHELL@
# Where to?
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datarootdir = @datarootdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
man1dir = $(mandir)/man1
includedir = @includedir@
oldincludedir = /usr/include
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
localedir = $(datadir)/locale
# Common programs
AR = @AR@
CC = @CC@
CPP = @CPP@
CXX = @CXX@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_HEADER = $(INSTALL_DATA)
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
LD = @LD@
MOC = @MOC@
OBJEXT = @OBJEXT@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
STRIP = @STRIP@
UIC = @UIC@
WINDRES = @WINDRES@
# Variable stuff as set by configure
BZ2_LIBS = @BZ2_LIBS@
BOOST_CPPFLAGS = @BOOST_CPPFLAGS@
BOOST_FILESYSTEM_LIB = @BOOST_FILESYSTEM_LIB@
BOOST_LDFLAGS = @BOOST_LDFLAGS@
BOOST_REGEX_LIB = @BOOST_REGEX_LIB@
BOOST_SYSTEM_LIB = @BOOST_SYSTEM_LIB@
DEBUG_CFLAGS = @DEBUG_CFLAGS@
DOCBOOK_MANPAGES_STYLESHEET = @DOCBOOK_MANPAGES_STYLESHEET@
DOCBOOK_ROOT = @DOCBOOK_ROOT@
EBML_CFLAGS = @EBML_CFLAGS@
EBML_LIBS = @EBML_LIBS@
EXPAT_CFLAGS = @EXPAT_CFLAGS@
EXPAT_LIBS = @EXPAT_LIBS@
EXTRA_CFLAGS = @EXTRA_CFLAGS@
EXTRA_LDFLAGS = @EXTRA_LDFLAGS@
LDFLAGS_RPATHS = @LDFLAGS_RPATHS@
FLAC_LIBS = @FLAC_LIBS@
ICONV_LIBS = @ICONV_LIBS@
LIBINTL_LIBS = @LIBINTL_LIBS@
LZO_LIBS = @LZO_LIBS@
MAGIC_LIBS = @MAGIC_LIBS@
MATROSKA_CFLAGS = @MATROSKA_CFLAGS@
MATROSKA_LIBS = @MATROSKA_LIBS@
MINGW_GUIAPP = @MINGW_GUIAPP@
MINGW_LIBS = @MINGW_LIBS@
MINGW = @MINGW@
OGG_LIBS = @OGG_LIBS@
OPTIMIZATION_CFLAGS = @OPTIMIZATION_CFLAGS@
PO4A = @PO4A@
PO4A_TRANSLATE = @PO4A_TRANSLATE@
PO4A_FLAGS = @PO4A_FLAGS@
PO4A_TRANSLATE_FLAGS = @PO4A_TRANSLATE_FLAGS@
PO4A_WORKS = @PO4A_WORKS@
PROFILING_CFLAGS = @PROFILING_CFLAGS@
PROFILING_LIBS = @PROFILING_LIBS@
QT_CFLAGS = @QT_CFLAGS@
QT_LIBS = @QT_LIBS@
USER_CPPFLAGS = @USER_CPPFLAGS@
USER_CXXFLAGS = @USER_CXXFLAGS@
USER_CFLAGS = @USER_CFLAGS@
USER_LDFLAGS = @USER_LDFLAGS@
VORBIS_LIBS = @VORBIS_LIBS@
WXWIDGETS_CFLAGS = @WXWIDGETS_CFLAGS@
WXWIDGETS_INCLUDES = @WXWIDGETS_INCLUDES@
WXWIDGETS_LIBS = @WXWIDGETS_LIBS@
XSLTPROC = @XSLTPROC@
XSLTPROC_FLAGS = @XSLTPROC_FLAGS@
XSLTPROC_WORKS = @XSLTPROC_WORKS@
ZLIB_LIBS = @ZLIB_LIBS@
WARNING_CFLAGS = -Wall -Wno-sign-compare -Wno-comment -Wno-strict-aliasing
CFLAGS = $(OPTIMIZATION_CFLAGS) $(WARNING_CFLAGS) \
-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
$(EXTRA_CFLAGS) $(DEBUG_CFLAGS) $(PROFILING_CFLAGS) $(MATROSKA_CFLAGS) $(EBML_CFLAGS) \
$(USER_CPPFLAGS) $(USER_CFLAGS)
CXXFLAGS = $(OPTIMIZATION_CFLAGS) $(WARNING_CFLAGS) \
-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
$(EXTRA_CFLAGS) $(DEBUG_CFLAGS) $(PROFILING_CFLAGS) $(MATROSKA_CFLAGS) $(EBML_CFLAGS) \
$(WXWIDGETS_CFLAGS) $(QT_CFLAGS) $(BOOST_CPPFLAGS) \
$(USER_CPPFLAGS) $(USER_CXXFLAGS)
CPPFLAGS = $(USER_CPPFLAGS) @CPPFLAGS@
LDFLAGS = $(EXTRA_LDFLAGS) $(PROFILING_LIBS) $(USER_LDFLAGS) $(LDFLAGS_RPATHS) $(BOOST_LDFLAGS)
CFLAGS += -DPACKAGE=\"$(PACKAGE)\" -DVERSION=\"$(VERSION)\"
CXXFLAGS += -DPACKAGE=\"$(PACKAGE)\" -DVERSION=\"$(VERSION)\"
CXXFLAGS += -DMTX_LOCALE_DIR=\"$(localedir)\" \
-DMTX_PKG_DATA_DIR=\"$(pkgdatadir)\"
# Which additional stuff to compile
USE_WXWIDGETS = @USE_WXWIDGETS@
USE_QT = @USE_QT@
LIBMTXCOMMONDLL=@LIBMTXCOMMONDLL@
ifeq (1,$(LIBMTXCOMMONDLL))
LIBMTXCOMMONEXT = dll
CXXFLAGS_SRC_COMMON += -DMTX_DLL_EXPORT
CXXFLAGS_NO_SRC_COMMON += -DMTX_DLL
else
LIBMTXCOMMONEXT = a
endif
ifeq (1,$(MINGW))
mmg_RESOURCES = src/mmg/mmg-resources.rc
mkvmerge_RESOURCES = src/merge/resources.rc
mkvinfo_RESOURCES = src/info/resources.rc
mkvextract_RESOURCES = src/extract/resources.rc
LIBRPCRT = -lrpcrt4
LIBS_WINGUI = -lole32 -lshell32
LDFLAGS += -Wl,--enable-auto-import
endif
DEP_COMMON = src/common/libmtxcommon.$(LIBMTXCOMMONEXT)
DEP_EBMLCOMMON = src/common/libmtxebmlcommon.a
DEP_KAXCOMMON = src/common/libmtxkaxcommon.a
DEP_INPUT = src/input/libmtxinput.a
DEP_OUTPUT = src/output/libmtxoutput.a
DEP_AVI = lib/avilib-0.6.10/libavi.a
DEP_RMFF = lib/librmff/librmff.a
DEP_MPEGPARSER = src/mpegparser/libmpegparser.a
COMPRESSION_LIBRARIES = $(LZO_LIBS) $(BZ2_LIBS)
APPLICATIONS = src/mkvmerge@EXEEXT@ src/mkvinfo@EXEEXT@ src/mkvextract@EXEEXT@ src/mkvpropedit@EXEEXT@
MANPAGES = doc/man/mkvmerge.1 doc/man/mkvinfo.1 doc/man/mkvextract.1 doc/man/mkvpropedit.1
ifeq (yes,$(USE_WXWIDGETS))
APPLICATIONS += src/mmg/mmg@EXEEXT@
MANPAGES += doc/man/mmg.1
endif
TRANSLATIONS = @TRANSLATIONS@
TRANSLATIONS_POS = @TRANSLATIONS_POS@
TRANSLATIONS_MOS = $(patsubst %.po,%.mo,$(TRANSLATIONS_POS))
MANPAGES_TRANSLATIONS = @MANPAGES_TRANSLATIONS@
MANPAGES_TRANSLATIONS_POS = @MANPAGES_TRANSLATIONS_POS@
MANPAGES_TRANSLATED = @MANPAGES_TRANSLATED@
GUIDE_TRANSLATIONS = @GUIDE_TRANSLATIONS@
HTMLHELPBOOKS = mkvmerge-gui-book
SYSTEM_INCLUDES = -I. -Ilib -Ilib/avilib-0.6.10 -Ilib/utf8-cpp/source -Isrc
SYSTEM_LIBDIRS = -Llib/avilib-0.6.10 -Llib/librmff \
-Lsrc/common -Lsrc/input -Lsrc/output -Lsrc/mpegparser
RUNAR = $(AR) rcu
LINK = $(CXX) $(LDFLAGS) $(LIBDIRS) $(SYSTEM_LIBDIRS)
LINKSHARED = $(CXX) $(LDFLAGS) $(LIBDIRS) $(SYSTEM_LIBDIRS) \
-shared -Wl,--export-all
CXXCOMPILE = $(CXX) $(CXXFLAGS) $(INCLUDES) $(SYSTEM_INCLUDES)
CCOMPILE = $(CC) $(CFLAGS) $(INCLUDES) $(SYSTEM_INCLUDES)
RCCOMPILE = $(WINDRES) $(WXWIDGETS_INCLUDES) -Isrc/mmg
ALL_SOURCES=$(wildcard lib/avilib-0.6.10/*.c) $(wildcard lib/avilib-0.6.10/*.cpp) \
$(wildcard lib/librmff/*.c) \
$(wildcard src/*.cpp) $(wildcard src/input/*.cpp) \
$(wildcard src/output/*.cpp) $(wildcard src/common/*.cpp) \
$(wildcard src/common/*/*.cpp) \
$(wildcard src/mmg/*.cpp) $(wildcard src/mmg/*/*.cpp) \
$(wildcard src/extract/*.cpp) $(wildcard src/propedit/*.cpp) \
$(wildcard src/merge/*.cpp) $(wildcard src/info/*.cpp) \
$(wildcard src/mpegparser/*.cpp) \
$(patsubst %.ui,%.h,$(UIFILES))
ALL_HEADERS=$(wildcard lib/avilib-0.6.10/*.h) $(wildcard lib/librmff/*.h) \
$(wildcard src/*.h) $(wildcard src/input/*.h) \
$(wildcard src/output/*.h) $(wildcard src/common/*.h) \
$(wildcard src/mmg/*.h) $(wildcard src/mmg/*/*.h) \
$(wildcard src/extract/*.h) $(willdcard src/propedit/*.h) \
$(wildcard src/merge/*.h) $(wildcard src/info/*.h) \
$(wildcard src/mpegparser/*.h) $(wildcard src/common/*/*.h)
ifeq ($(V),1)
Q =
SQ = echo
else
Q = @
SQ = true
endif
.DEFAULT_GOAL := all
ifeq (1,$(TOOLS))
include src/tools/Makefile
endif
# Only rebuild the TAGS file if one is already present by a previous
# call to "make tags". This is only useful for developers.
ifneq (,$(wildcard TAGS))
ifdef ETAGS
TAGSFILE = TAGS
endif
endif
# Only rebuild the man pages if both xsltproc and the DocBook
# stylesheet have been found by configure.
ifeq ($(XSLTPROC_WORKS),yes)
MANPAGES_DEP = $(MANPAGES)
ifeq (yes,$(PO4A_WORKS))
MANPAGES_DEP += $(MANPAGES_TRANSLATED)
endif
endif
all: $(MANPAGES_DEP) $(TAGSFILE) $(APPLICATIONS) $(TRANSLATIONS_MOS) $(HTMLHELPBOOKS)
install: install-programs install-mans install-translated-mans install-trans install-guide
install-programs: $(APPLICATIONS)
$(mkinstalldirs) $(DESTDIR)$(bindir)
@list='$(APPLICATIONS)'; for p in $$list; do \
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
if test -f $$p ; then \
f=`echo "$$p1" | sed 's,^.*/,,;s/$$/$(EXEEXT)/'`; \
echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$f"; \
$(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$f; \
else :; fi; \
done
install-mans:
$(mkinstalldirs) $(DESTDIR)$(man1dir)
@for i in $(MANPAGES); do \
inst=`echo $$i | sed -e 's/^.*\///'`; \
echo " $(INSTALL_DATA) $$i $(DESTDIR)$(man1dir)/$$inst"; \
$(INSTALL_DATA) $$i $(DESTDIR)$(man1dir)/$$inst; \
done
install-translated-mans:
@for lang in $(MANPAGES_TRANSLATIONS); do \
$(mkinstalldirs) $(DESTDIR)$(mandir)/$$lang/man1; \
for manpage in $(MANPAGES); do \
inst=`echo $$manpage | sed -e 's/^.*\///'`; \
echo " $(INSTALL_DATA) $$manpage $(DESTDIR)$(mandir)/$$lang/man1/$$inst"; \
$(INSTALL_DATA) $$manpage $(DESTDIR)$(mandir)/$$lang/man1/$$inst; \
done; \
done
install-trans:
@for i in $(TRANSLATIONS); do \
echo "$(mkinstalldirs) $(DESTDIR)$(localedir)/$$i/LC_MESSAGES"; \
$(mkinstalldirs) $(DESTDIR)$(localedir)/$$i/LC_MESSAGES; \
echo "$(INSTALL_DATA) po/$$i.mo $(DESTDIR)$(localedir)/$$i/LC_MESSAGES/mkvtoolnix.mo"; \
$(INSTALL_DATA) po/$$i.mo $(DESTDIR)$(localedir)/$$i/LC_MESSAGES/mkvtoolnix.mo; \
done
install-guide:
$(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
@for lang in $(GUIDE_TRANSLATIONS); do \
$(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/guide/$$lang/images ; \
for file in doc/guide/$$lang/mkvmerge-gui.*; do \
echo " $(INSTALL_DATA) $$file $(DESTDIR)$(pkgdatadir)/guide/$$lang/"; \
$(INSTALL_DATA) $$file $(DESTDIR)$(pkgdatadir)/guide/$$lang/; \
done; \
for file in doc/guide/$$lang/images/*gif; do \
echo " $(INSTALL_DATA) $$file $(DESTDIR)$(pkgdatadir)/guide/$$lang/images/"; \
$(INSTALL_DATA) $$file $(DESTDIR)$(pkgdatadir)/guide/$$lang/images/; \
done; \
done
manpages: $(MANPAGES)
translated-manpages: $(MANPAGES_TRANSLATED)
update-manpage-po update-man-po:
$(PO4A) $(PO4A_FLAGS) doc/man/po4a/po4a.cfg
# Some general rules
ifeq (1,$(LIBMTXCOMMONDLL))
%.o: %.cpp
@echo ' CXX ' $<
@if echo $@ | $(GREP) src.common > /dev/null 2>&1; then \
test x$(V) = "x1" && echo $(CXXCOMPILE) $(CXXFLAGS_SRC_COMMON) -c -o $@ $< ; \
$(CXXCOMPILE) $(CXXFLAGS_SRC_COMMON) -c -MMD -o $@ $< ; \
./handle_deps $@ $$? ; \
else \
test x$(V) = "x1" && echo $(CXXCOMPILE) $(CXXFLAGS_NO_SRC_COMMON) -c -o $@ $< ; \
$(CXXCOMPILE) $(CXXFLAGS_NO_SRC_COMMON)-MMD -c -o $@ $< ; \
./handle_deps $@ $$? ; \
fi
else
%.o: %.cpp
@echo ' CXX ' $<
$(Q)$(CXXCOMPILE) -MMD -c -o $@ $< ; ./handle_deps $@ $$?
endif
%.o: %.c
@echo ' CC ' $<
$(Q)$(CCOMPILE) -MMD -c -o $@ $< ; ./handle_deps $@ $$?
%.o: %.rc
@echo ' WINDRES ' $<
$(Q)$(RCCOMPILE) -o $@ $<
%.mo: %.po
@echo ' MSGFMT ' $<
$(Q)msgfmt -o $@ $<
# HTML help book stuff
%.hhk: %.hhc
@echo ' GREP ' $<
$(Q)$(GREP) -v 'name="ID"' $< > $@
# man pages from DocBook XML
%.1: %.xml
@echo 'XSLTPROC ' $<
$(Q)$(XSLTPROC) $(XSLTPROC_FLAGS) -o $@ $(DOCBOOK_MANPAGES_STYLESHEET) $<
# translated DocBook XML
@MANPAGES_TRANSLATED_XML_RULE@
# Qt files
%.h: %.ui
@echo ' UIC ' $<
$(Q)$(UIC) $< > $@
%.moc.cpp: %.h
@echo ' MOC ' $<
$(Q)$(MOC) $(QT_CFLAGS) $< > $@
clean:
rm -f *.o */*.o */*/*.o */lib*.a */*/lib*.a po/*.mo $(APPLICATIONS) \
*/*.exe */*/*.exe */*/*.dll */*/*.dll.a doc/*.hhk \
src/info/ui/*.h src/info/*.moc.cpp src/common/*/*.o \
src/mmg/*/*.o
distclean dist-clean: clean
rm -f config.h config.log config.cache Makefile */Makefile */*/Makefile TAGS
rm -rf .deps
maintainer-clean: distclean
rm -f configure config.h.in
create-pot:
@echo 'XGETTEXT'
$(Q)xgettext --keyword=YT --keyword=Y --keyword=Z --keyword=TIP \
--default-domain=mkvtoolnix --from-code=UTF-8 -s --omit-header -o po/mkvtoolnix.pot \
$(ALL_SOURCES) $(ALL_HEADERS)
update-po: create-pot
@for i in po/*.po ; do \
echo 'MSGMERGE ' $$i ; \
$(SQ) msgmerge -q -s --no-wrap $$i po/mkvtoolnix.pot ; \
msgmerge -q -s --no-wrap $$i po/mkvtoolnix.pot > $$i.new ; \
mv $$i.new $$i ; \
done
@rm po/mkvtoolnix.pot
@for i in zh_CN zh_TW ; do \
perl -ni -e 'if (m/^#:/) { s/(\d) /$$1\n#: /g; print; } elsif (m/^#~/) { $$nonl = 1; print; } elsif (!($$nonl && m/^\s*$$/)) { print; }' po/$$i.po ; \
echo >> po/$$i.po ; \
done
po-stats po-statistics:
@for i in po/*.po doc/man/po4a/po/*.po; do \
echo ' MSGFMT ' $$i ; \
$(SQ) msgfmt --statistics -o /dev/null $$i ; \
msgfmt --statistics -o /dev/null $$i ; \
done
mkvmerge-gui-book: $(patsubst %,doc/guide/%/mkvmerge-gui.hhk,$(GUIDE_TRANSLATIONS))
tags: TAGS
TAGS: $(ALL_SOURCES)
@echo ' ETAGS'
$(Q)$(ETAGS) -o $@ $^
#
# avilib-0.6.10
#
libavi_SOURCES = $(wildcard lib/avilib-0.6.10/*.c) $(wildcard lib/avilib-0.6.10/*.cpp)
libavi_OBJECTS := $(patsubst %.c,%.o,$(patsubst %.cpp,%.o,$(libavi_SOURCES)))
lib/avilib-0.6.10/libavi.a: $(libavi_OBJECTS)
@rm -f $@
@echo ' AR ' $@
$(Q)$(RUNAR) $@ $(libavi_OBJECTS)
@echo ' RANLIB ' $@
$(Q)$(RANLIB) $@
#
# librmff
#
librmff_SOURCES = $(wildcard lib/librmff/*.c)
librmff_OBJECTS := $(patsubst %.c,%.o,$(librmff_SOURCES))
lib/librmff/librmff.a: $(librmff_OBJECTS)
@rm -f $@
@echo ' AR ' $@
$(Q)$(RUNAR) $@ $(librmff_OBJECTS)
@echo ' RANLIB ' $@
$(Q)$(RANLIB) $@
#
# spyder's MPEG parser
#
libmpegparser_SOURCES = $(wildcard src/mpegparser/*.cpp)
libmpegparser_OBJECTS := $(patsubst %.cpp,%.o,$(libmpegparser_SOURCES))
src/mpegparser/libmpegparser.a: $(libmpegparser_OBJECTS)
@rm -f $@
@echo ' AR ' $@
$(Q)$(RUNAR) $@ $(libmpegparser_OBJECTS)
@echo ' RANLIB ' $@
$(Q)$(RANLIB) $@
#
# src/common
#
libmtxcommon_SOURCES = $(wildcard src/common/*.cpp) $(wildcard src/common/*/*.cpp)
libmtxcommon_OBJECTS := $(patsubst %.cpp,%.o,$(libmtxcommon_SOURCES))
src/common/libmtxcommon.dll: $(libmtxcommon_OBJECTS)
@echo ' LD/DLL ' $@
$(Q)$(LINKSHARED) -Wl,--out-implib=$@.a -o $@ $(libmtxcommon_OBJECTS) \
-liconv -lz $(COMPRESSION_LIBRARIES) -lmatroska -lebml \
-lexpat -lrpcrt4
src/common/libmtxcommon.a: $(libmtxcommon_OBJECTS)
@rm -f $@
@echo ' AR ' $@
$(Q)$(RUNAR) $@ $(libmtxcommon_OBJECTS)
@echo ' RANLIB ' $@
$(Q)$(RANLIB) $@
#
# src/input
#
libmtxinput_SOURCES = $(wildcard src/input/*.cpp)
libmtxinput_OBJECTS := $(patsubst %.cpp,%.o,$(libmtxinput_SOURCES))
src/input/libmtxinput.a: $(libmtxinput_OBJECTS)
@rm -f $@
@echo ' AR ' $@
$(Q)$(RUNAR) $@ $(libmtxinput_OBJECTS)
@echo ' RANLIB ' $@
$(Q)$(RANLIB) $@
#
# src/output
#
libmtxoutput_SOURCES = $(wildcard src/output/*.cpp)
libmtxoutput_OBJECTS := $(patsubst %.cpp,%.o,$(libmtxoutput_SOURCES))
src/output/libmtxoutput.a: $(libmtxoutput_OBJECTS)
@rm -f $@
@echo ' AR ' $@
$(Q)$(RUNAR) $@ $(libmtxoutput_OBJECTS)
@echo ' RANLIB ' $@
$(Q)$(RANLIB) $@
#
# src/merge
#
mkvmerge_SOURCES = $(wildcard src/merge/*.cpp)
mkvmerge_OBJECTS := $(patsubst %.cpp,%.o,$(mkvmerge_SOURCES)) \
$(patsubst %.rc,%.o,$(mkvmerge_RESOURCES))
mkvmerge_DEPENDENCIES += $(DEP_COMMON) \
$(DEP_COMP) $(DEP_INPUT) $(DEP_OUTPUT) $(DEP_AVI) $(DEP_RMFF) \
$(DEP_MPEGPARSER)
mkvmerge_LDADD = -lmtxinput -lmtxoutput \
-lmtxcommon $(MAGIC_LIBS) -lmatroska -lebml \
-lavi -lrmff -lmpegparser \
$(FLAC_LIBS) -lvorbis -logg -lz $(COMPRESSION_LIBRARIES) \
-lexpat $(ICONV_LIBS) $(LIBINTL_LIBS) $(LIBRPCRT) \
$(BOOST_REGEX_LIB) $(BOOST_FILESYSTEM_LIB) $(BOOST_SYSTEM_LIB)
#
# src/info
#
mkvinfo_SOURCES = src/info/mkvinfo.cpp src/info/console_ui.cpp
mkvinfo_LDADD = -lmtxcommon $(MAGIC_LIBS) -lmatroska -lebml \
$(BOOST_REGEX_LIB) $(BOOST_FILESYSTEM_LIB) $(BOOST_SYSTEM_LIB)
ifeq (yes,$(USE_QT))
mkvinfo_SOURCES += src/info/qt_ui.cpp src/info/qt_ui.moc.cpp \
src/info/rightclick_tree_widget.moc.cpp
mkvinfo_UIFILES = $(patsubst %.ui,%.h,$(wildcard src/info/ui/*.ui))
mkvinfo_LDADD += $(QT_LIBS)
src/info/qt_ui.o: $(wildcard src/info/ui/*.ui)
else
ifeq (yes,$(USE_WXWIDGETS))
mkvinfo_SOURCES += src/info/wxwidgets_ui.cpp
mkvinfo_LDADD += $(WXWIDGETS_LIBS)
endif
endif
mkvinfo_OBJECTS := $(patsubst %.cpp,%.o,$(mkvinfo_SOURCES)) \
$(patsubst %.rc,%.o,$(mkvinfo_RESOURCES))
mkvinfo_DEPENDENCIES += $(DEP_COMMON)
mkvinfo_LDADD += -lexpat $(ICONV_LIBS) $(LIBINTL_LIBS) $(LIBRPCRT)
#
# src/extract
#
mkvextract_SOURCES = $(wildcard src/extract/*.cpp)
mkvextract_OBJECTS := $(patsubst %.cpp,%.o,$(mkvextract_SOURCES)) \
$(patsubst %.rc,%.o,$(mkvextract_RESOURCES))
mkvextract_DEPENDENCIES += $(DEP_COMMON) $(DEP_AVI) $(DEP_RMFF)
mkvextract_LDADD = -lmtxcommon $(MAGIC_LIBS) -lvorbis -logg -lavi -lmatroska -lebml -lrmff \
$(ICONV_LIBS) $(LIBINTL_LIBS) -lexpat \
-lz $(COMPRESSION_LIBRARIES) $(LIBRPCRT) \
$(BOOST_REGEX_LIB) $(BOOST_FILESYSTEM_LIB) $(BOOST_SYSTEM_LIB)
#
# src/propedit
#
mkvpropedit_SOURCES = $(wildcard src/propedit/*.cpp)
mkvpropedit_OBJECTS := $(patsubst %.cpp,%.o,$(mkvpropedit_SOURCES)) \
$(patsubst %.rc,%.o,$(mkvpropedit_RESOURCES))
mkvpropedit_DEPENDENCIES += $(DEP_COMMON) $(DEP_AVI) $(DEP_RMFF)
mkvpropedit_LDADD = -lmtxcommon $(MAGIC_LIBS) -lvorbis -logg -lavi -lmatroska -lebml -lrmff \
$(ICONV_LIBS) $(LIBINTL_LIBS) -lexpat \
-lz $(COMPRESSION_LIBRARIES) $(LIBRPCRT) \
$(BOOST_REGEX_LIB) $(BOOST_FILESYSTEM_LIB) $(BOOST_SYSTEM_LIB)
#
# src/mmg
#
mmg_SOURCES = $(wildcard src/mmg/*.cpp) $(wildcard src/mmg/*/*.cpp)
mmg_OBJECTS := $(patsubst %.cpp,%.o,$(mmg_SOURCES)) \
$(patsubst %.rc,%.o,$(mmg_RESOURCES))
mmg_DEPENDENCIES += $(DEP_COMMON)
mmg_LDADD = -lmtxcommon $(MAGIC_LIBS) -lmatroska -lebml -lexpat $(ICONV_LIBS) \
$(WXWIDGETS_LIBS) $(LIBINTL_LIBS) $(MINGW_GUIAPP) \
$(BOOST_REGEX_LIB) $(BOOST_FILESYSTEM_LIB) $(BOOST_SYSTEM_LIB) \
$(LIBRPCRT) $(LIBS_WINGUI)
mkvmerge: src/mkvmerge@EXEEXT@
src/mkvmerge@EXEEXT@: $(mkvmerge_OBJECTS) $(mkvmerge_DEPENDENCIES)
@echo ' LINK ' $@
$(Q)$(LINK) -o $@ $(mkvmerge_OBJECTS) $(mkvmerge_LDADD)
mkvinfo: src/mkvinfo@EXEEXT@
src/mkvinfo@EXEEXT@: $(mkvinfo_UIFILES) $(mkvinfo_OBJECTS) $(mkvinfo_DEPENDENCIES)
@echo ' LINK ' $@
$(Q)$(LINK) -o $@ $(mkvinfo_OBJECTS) $(mkvinfo_LDADD)
mkvextract: src/mkvextract@EXEEXT@
src/mkvextract@EXEEXT@: $(mkvextract_OBJECTS) $(mkvextract_DEPENDENCIES)
@echo ' LINK ' $@
$(Q)$(LINK) -o $@ $(mkvextract_OBJECTS) $(mkvextract_LDADD)
mkvpropedit: src/mkvpropedit@EXEEXT@
src/mkvpropedit@EXEEXT@: $(mkvpropedit_OBJECTS) $(mkvpropedit_DEPENDENCIES)
@echo ' LINK ' $@
$(Q)$(LINK) -o $@ $(mkvpropedit_OBJECTS) $(mkvpropedit_LDADD)
mmg: src/mmg/mmg@EXEEXT@
src/mmg/mmg@EXEEXT@: $(mmg_OBJECTS) $(mmg_DEPENDENCIES)
@echo ' LINK ' $@
$(Q)$(LINK) -o $@ $(mmg_OBJECTS) $(mmg_LDADD)
.SECONDARY:
#
# include dependency files if they exist
#
-include ./.deps/*.d