]> git.lyx.org Git - lyx.git/blobdiff - src/Makefile.am
Account for old versions of Pygments
[lyx.git] / src / Makefile.am
index d3c52f5e90a30d5a4313f944ced70787dfd5630a..5bf8f3bd5e3f19f4c0c18b208fc4a5327425f3a4 100644 (file)
@@ -2,10 +2,10 @@ include $(top_srcdir)/config/common.am
 
 ############################### Core  ##############################
 
-DISTCLEANFILES += libintl.h
-
-AM_CPPFLAGS += $(PCH_FLAGS) -I$(top_srcdir)/src $(BOOST_INCLUDES) $(ENCHANT_CFLAGS) $(HUNSPELL_CFLAGS)
-AM_CPPFLAGS += $(QT4_CPPFLAGS) $(QT4_CORE_INCLUDES)
+AM_CPPFLAGS += -I$(top_srcdir)/src
+AM_CPPFLAGS += $(BOOST_INCLUDES) $(ICONV_INCLUDES) $(ZLIB_INCLUDES)
+AM_CPPFLAGS += $(ENCHANT_CFLAGS) $(HUNSPELL_CFLAGS) $(MYTHES_INCLUDES)
+AM_CPPFLAGS += $(QT_CPPFLAGS) $(QT_CORE_INCLUDES)
 
 if BUILD_CLIENT_SUBDIR
 CLIENT = client
@@ -13,10 +13,16 @@ endif
 
 SUBDIRS = support frontends . $(CLIENT) tex2lyx
 
-EXTRA_DIST = pch.h
+EXTRA_DIST = lyx_commit_hash.h.in \
+       CMakeLists.txt \
+       graphics/CMakeLists.txt \
+       insets/CMakeLists.txt \
+       mathed/CMakeLists.txt \
+       tests/CMakeLists.txt
 
-OTHERLIBS = $(BOOST_LIBS) $(INTLLIBS) $(MYTHES_LIBS) \
-                $(ENCHANT_LIBS) $(HUNSPELL_LIBS) @LIBS@ $(SOCKET_LIBS) $(LIBSHLWAPI) $(LIBPSAPI)
+OTHERLIBS = $(BOOST_LIBS) $(MYTHES_LIBS) $(ENCHANT_LIBS) $(HUNSPELL_LIBS) \
+            @LIBS@ $(ICONV_LIBS) $(ZLIB_LIBS) $(SOCKET_LIBS) \
+           $(LIBSHLWAPI) $(LIBPSAPI)
 
 noinst_LIBRARIES = liblyxcore.a
 bin_PROGRAMS = lyx
@@ -30,23 +36,21 @@ lyx_LDADD = \
        liblyxgraphics.a \
        support/liblyxsupport.a \
        $(OTHERLIBS) \
-       $(QT4_LDFLAGS) \
-       $(QT4_LIB)
+       $(QT_LDFLAGS) \
+       $(QT_LIB)
 
 if LYX_WIN_RESOURCE
 .rc.o:
        cp $(top_srcdir)/development/Win32/packaging/icons/lyx_*32x32.ico .
-       windres -I$(top_builddir) --preprocessor "$(CPP) -xc-header -DRC_INVOKED" $< -o $@
+       $(RC) -I$(top_builddir) --preprocessor "$(CPP) -xc-header -DRC_INVOKED" $< -o $@
 endif
 
 if INSTALL_MACOSX
-lyx_LDFLAGS = -framework AppKit -framework ApplicationServices
+lyx_LDFLAGS = -framework AppKit -framework ApplicationServices \
+       -Wl,-rpath,@loader_path/../Frameworks \
+       -Wl,-rpath,@executable_path/../Frameworks
 endif
 
-#lyx_LDFLAGS=-Wl,-O1
-
-BUILT_SOURCES = $(PCH_FILE)
-
 if INSTALL_MACOSX
 APPLESPELL = AppleSpellChecker.cpp AppleSpellChecker.h
 endif
@@ -66,10 +70,6 @@ HUNSPELL = HunspellChecker.cpp HunspellChecker.h
 PWL = PersonalWordList.cpp PersonalWordList.h
 endif
 
-# These four objects are linked as object files as they are not
-# referenced within the core and therefore are not picked up
-# by the linker without looping over libs. We do not want that,
-# and in fact libtools seems not able to do that.
 lyx_SOURCES = \
        main.cpp \
        $(APPLESPELL) \
@@ -98,7 +98,6 @@ endif
 
 SOURCEFILESCORE = \
        Author.cpp \
-       Bidi.cpp \
        boost.cpp \
        BranchList.cpp \
        Buffer.cpp \
@@ -109,6 +108,7 @@ SOURCEFILESCORE = \
        Bullet.cpp \
        Changes.cpp \
        Chktex.cpp \
+       CiteEnginesList.cpp \
        CmdDef.cpp \
        Color.cpp \
        ConverterCache.cpp \
@@ -121,6 +121,7 @@ SOURCEFILESCORE = \
        DepTable.cpp \
        DocIterator.cpp \
        Encoding.cpp \
+       BufferEncodings.cpp \
        ErrorList.cpp \
        Exporter.cpp \
        factory.cpp \
@@ -133,7 +134,6 @@ SOURCEFILESCORE = \
        FuncRequest.cpp \
        FuncStatus.cpp \
        Graph.cpp \
-       HSpace.cpp \
        IndicesList.cpp \
        InsetIterator.cpp \
        InsetList.cpp \
@@ -169,20 +169,21 @@ SOURCEFILESCORE = \
        ParIterator.cpp \
        PDFOptions.cpp \
        Row.cpp \
-       rowpainter.cpp \
+       RowPainter.cpp \
        Server.cpp \
        ServerSocket.cpp \
        sgml.cpp \
        Session.cpp \
        Spacing.cpp \
        TexRow.cpp \
+       texstream.cpp \
        Text.cpp \
        Text2.cpp \
        Text3.cpp \
-       TexStream.cpp \
        TextClass.cpp \
        TextMetrics.cpp \
        TocBackend.cpp \
+       TocBuilder.cpp \
        Trans.cpp \
        Undo.cpp \
        VCBackend.cpp \
@@ -192,15 +193,16 @@ SOURCEFILESCORE = \
 
 HEADERFILESCORE = \
        Author.h \
-       Bidi.h \
        BranchList.h \
        buffer_funcs.h \
        Buffer.h \
+       BufferEncodings.h \
        BufferList.h \
        BufferParams.h \
        BufferView.h \
        Bullet.h \
        Citation.h \
+       CiteEnginesList.h \
        Changes.h \
        Chktex.h \
        CmdDef.h \
@@ -234,7 +236,6 @@ HEADERFILESCORE = \
        FuncRequest.h \
        FuncStatus.h \
        Graph.h \
-       HSpace.h \
        IndicesList.h \
        InsetIterator.h \
        InsetList.h \
@@ -274,7 +275,7 @@ HEADERFILESCORE = \
        ParIterator.h \
        PDFOptions.h \
        Row.h \
-       rowpainter.h \
+       RowPainter.h \
        Server.h \
        ServerSocket.h \
        Session.h \
@@ -282,11 +283,13 @@ HEADERFILESCORE = \
        Spacing.h \
        SpellChecker.h \
        TexRow.h \
-       TexStream.h \
+       texstream.h \
        Text.h \
        TextClass.h \
        TextMetrics.h \
+       Toc.h \
        TocBackend.h \
+       TocBuilder.h \
        Trans.h \
        Undo.h \
        update_flags.h \
@@ -300,15 +303,35 @@ STANDALONEFILES = \
        Layout.cpp
 
 
+.PHONY: update_commit_hash
+
+LCH_V_GEN = $(lch__v_GEN_@AM_V@)
+lch__v_GEN_ = $(lch__v_GEN_@AM_DEFAULT_V@)
+lch__v_GEN_0 = @echo "  GEN      lyx_commit_hash.h";
+lch__v_GEN_1 =
+
+update_commit_hash:
+       rm -f hash-temp \
+       $(LCH_V_GEN)hash=`cd "$(top_srcdir)" && git log -1 --pretty=format:%H 2>/dev/null || echo none` ; \
+       sed s/@LYX_GIT_COMMIT_HASH@/$$hash/ "$(srcdir)"/lyx_commit_hash.h.in >hash-temp ; \
+       cmp -s lyx_commit_hash.h hash-temp || cp hash-temp lyx_commit_hash.h ; \
+       rm -f hash-temp
+
+lyx_commit_hash.h: update_commit_hash
+
+BUILT_SOURCES = lyx_commit_hash.h
+CLEANFILES = lyx_commit_hash.h
+
 lyxcore.cpp:
-       @echo -e '$(SOURCEFILESCORE:%=\n#include "%")\n' > $@
+       $(AM_V_GEN)for file in $(SOURCEFILESCORE) ; do echo '#include "'$${file}'"' ; done >$@
 
 if MONOLITHIC_CORE
 
 BUILT_SOURCES += lyxcore.cpp $(STANDALONEFILES)
 CLEANFILES += lyxcore.cpp
 
-liblyxcore_a_SOURCES = lyxcore.cpp $(STANDALONEFILES) $(HEADERFILESCORE)
+nodist_liblyxcore_a_SOURCES = lyxcore.cpp
+liblyxcore_a_SOURCES = $(STANDALONEFILES) $(HEADERFILESCORE)
 
 else
 
@@ -318,7 +341,7 @@ endif
 
 #########################  Qt stuff  ##############################
 
-MOCHEADER = Compare.h
+MOCHEADER = Compare.h PreviewLoader.h
 
 if INSTALL_WINDOWS
 
@@ -332,8 +355,11 @@ MOCEDFILES = $(MOCHEADER:%.h=moc_%.cpp)
 BUILT_SOURCES += $(MOCEDFILES)
 CLEANFILES += $(MOCEDFILES)
 
+moc_PreviewLoader.cpp: graphics/PreviewLoader.h
+       $(AM_V_GEN)$(QT_MOC) $(MOCFLAG) -o $@ $<
+
 moc_%.cpp: %.h
-       $(MOC4) $(MOCFLAG) -o $@ $<
+       $(AM_V_GEN)$(QT_MOC) $(MOCFLAG) -o $@ $<
 
 liblyxcore_a_DEPENDENCIES = $(MOCEDFILES)
 
@@ -364,8 +390,6 @@ liblyxgraphics_a_SOURCES = \
 
 ############################### Mathed  ##############################
 
-EXTRA_DIST += mathed/InsetFormulaMacro.cpp
-
 noinst_LIBRARIES += liblyxmathed.a
 
 SOURCEFILESMATHED = \
@@ -377,8 +401,11 @@ SOURCEFILESMATHED = \
        mathed/InsetMathBox.cpp \
        mathed/InsetMathBrace.cpp \
        mathed/InsetMath.cpp \
+       mathed/InsetMathCancel.cpp \
+       mathed/InsetMathCancelto.cpp \
        mathed/InsetMathCases.cpp \
        mathed/InsetMathChar.cpp \
+       mathed/InsetMathClass.cpp \
        mathed/InsetMathColor.cpp \
        mathed/InsetMathComment.cpp \
        mathed/InsetMathDecoration.cpp \
@@ -398,8 +425,6 @@ SOURCEFILESMATHED = \
        mathed/InsetMathKern.cpp \
        mathed/InsetMathLefteqn.cpp \
        mathed/InsetMathLim.cpp \
-       mathed/InsetMathCancel.cpp \
-       mathed/InsetMathCancelto.cpp \
        mathed/InsetMathMatrix.cpp \
        mathed/InsetMathNest.cpp \
        mathed/InsetMathNumber.cpp \
@@ -409,6 +434,7 @@ SOURCEFILESMATHED = \
        mathed/InsetMathRef.cpp \
        mathed/InsetMathRoot.cpp \
        mathed/InsetMathScript.cpp \
+       mathed/InsetMathSideset.cpp \
        mathed/InsetMathSize.cpp \
        mathed/InsetMathSpace.cpp \
        mathed/InsetMathSpecialChar.cpp \
@@ -424,16 +450,18 @@ SOURCEFILESMATHED = \
        mathed/InsetMathXArrow.cpp \
        mathed/InsetMathXYMatrix.cpp \
        mathed/InsetMathDiagram.cpp \
+       mathed/MacroTable.cpp \
        mathed/MathAtom.cpp \
        mathed/MathAutoCorrect.cpp \
+       mathed/MathClass.cpp \
        mathed/MathData.cpp \
        mathed/MathExtern.cpp \
        mathed/MathFactory.cpp \
        mathed/MathMacro.cpp \
        mathed/MathMacroArgument.cpp \
-       mathed/MacroTable.cpp \
        mathed/MathMacroTemplate.cpp \
        mathed/MathParser.cpp \
+       mathed/MathRow.cpp \
        mathed/MathStream.cpp \
        mathed/MathSupport.cpp \
        mathed/TextPainter.cpp
@@ -450,6 +478,7 @@ HEADERFILESMATHED = \
        mathed/InsetMathCancelto.h \
        mathed/InsetMathCases.h \
        mathed/InsetMathChar.h \
+       mathed/InsetMathClass.h \
        mathed/InsetMathColor.h \
        mathed/InsetMathComment.h \
        mathed/InsetMathDelim.h \
@@ -477,6 +506,7 @@ HEADERFILESMATHED = \
        mathed/InsetMathRef.h \
        mathed/InsetMathRoot.h \
        mathed/InsetMathScript.h \
+       mathed/InsetMathSideset.h \
        mathed/InsetMathSize.h \
        mathed/InsetMathSpace.h \
        mathed/InsetMathSpecialChar.h \
@@ -494,31 +524,33 @@ HEADERFILESMATHED = \
        mathed/InsetMathDiagram.h \
        mathed/MathAtom.h \
        mathed/MathAutoCorrect.h \
+       mathed/MathClass.h \
        mathed/MathData.h \
        mathed/MathCompletionList.h \
        mathed/MathExtern.h \
        mathed/MathFactory.h \
-       mathed/MathGridInfo.h \
        mathed/MathMacro.h \
        mathed/MathMacroArgument.h \
        mathed/MacroTable.h \
        mathed/MathMacroTemplate.h \
        mathed/MathParser.h \
        mathed/MathParser_flags.h \
+       mathed/MathRow.h \
        mathed/ReplaceData.h \
        mathed/MathStream.h \
        mathed/MathSupport.h \
        mathed/TextPainter.h
 
 lyxmathed.cpp:
-       @echo -e '$(SOURCEFILESMATHED:%=\n#include "%")\n' > $@
+       $(AM_V_GEN)for file in $(SOURCEFILESMATHED) ; do echo '#include "'$${file}'"' ; done >$@
 
 if MONOLITHIC_MATHED
 
 BUILT_SOURCES += lyxmathed.cpp
 CLEANFILES += lyxmathed.cpp
 
-liblyxmathed_a_SOURCES = lyxmathed.cpp $(HEADERFILESMATHED)
+nodist_liblyxmathed_a_SOURCES = lyxmathed.cpp
+liblyxmathed_a_SOURCES = $(HEADERFILESMATHED)
 
 else
 
@@ -544,6 +576,7 @@ SOURCEFILESINSETS = \
        insets/InsetBox.cpp \
        insets/InsetBranch.cpp \
        insets/InsetCaption.cpp \
+       insets/InsetCaptionable.cpp \
        insets/InsetCitation.cpp \
        insets/InsetCollapsable.cpp \
        insets/InsetCommand.cpp \
@@ -578,6 +611,7 @@ SOURCEFILESINSETS = \
        insets/InsetQuotes.cpp \
        insets/InsetRef.cpp \
        insets/InsetScript.cpp \
+       insets/InsetSeparator.cpp \
        insets/InsetSpace.cpp \
        insets/InsetSpecialChar.cpp \
        insets/InsetTabular.cpp \
@@ -601,6 +635,7 @@ HEADERFILESINSETS = \
        insets/InsetBox.h \
        insets/InsetBranch.h \
        insets/InsetCaption.h \
+       insets/InsetCaptionable.h \
        insets/InsetCitation.h \
        insets/InsetCode.h \
        insets/InsetCollapsable.h \
@@ -636,6 +671,7 @@ HEADERFILESINSETS = \
        insets/InsetQuotes.h \
        insets/InsetRef.h \
        insets/InsetScript.h \
+       insets/InsetSeparator.h \
        insets/InsetSpace.h \
        insets/InsetSpecialChar.h \
        insets/InsetTabular.h \
@@ -644,23 +680,121 @@ HEADERFILESINSETS = \
        insets/InsetVSpace.h \
        insets/InsetWrap.h
 
-#      insets/InsetList.cpp \
-#      insets/InsetList.h \
-#      insets/InsetSection.h \
-#      insets/InsetSection.cpp
-
 lyxinsets.cpp:
-       @echo -e '$(SOURCEFILESINSETS:%=\n#include "%")\n' > $@
+       $(AM_V_GEN)for file in $(SOURCEFILESINSETS) ; do echo '#include "'$${file}'"' ; done >$@
 
 if MONOLITHIC_INSETS
 
 BUILT_SOURCES += lyxinsets.cpp
 CLEANFILES += lyxinsets.cpp
 
-liblyxinsets_a_SOURCES = lyxinsets.cpp $(HEADERFILESINSETS)
+nodist_liblyxinsets_a_SOURCES = lyxinsets.cpp
+liblyxinsets_a_SOURCES = $(HEADERFILESINSETS)
 
 else
 
 liblyxinsets_a_SOURCES = $(SOURCEFILESINSETS) $(HEADERFILESINSETS)
 
 endif
+
+
+############################## Tests ##################################
+
+EXTRA_DIST += \
+       tests/test_ExternalTransforms \
+       tests/test_ListingsCaption \
+       tests/test_layout \
+       tests/test_Length \
+       tests/regfiles/ExternalTransforms \
+       tests/regfiles/Length \
+       tests/regfiles/ListingsCaption \
+       tests/dummy_functions.cpp \
+       tests/boost.cpp
+
+TESTS = tests/test_ExternalTransforms tests/test_ListingsCaption \
+       tests/test_layout tests/test_Length
+
+alltests: check alltests-recursive
+
+alltests-recursive: check_layout
+       @srcdir=$(srcdir) $(srcdir)/tests/test_layout; \
+       if test $$? -eq 0; then \
+               echo -e "====================\nlayout tests passed.\n===================="; \
+       else \
+               echo -e "====================\nlayout tests failed.\n===================="; \
+       fi
+       cd tex2lyx; $(MAKE) alltests-recursive
+
+updatetests:
+       cd tex2lyx; $(MAKE) updatetests
+
+check_PROGRAMS = \
+       check_ExternalTransforms \
+       check_Length \
+       check_ListingsCaption \
+       check_layout
+
+if INSTALL_MACOSX
+ADD_FRAMEWORKS = -framework QtGui -framework QtCore -framework AppKit -framework ApplicationServices
+endif
+
+TESTS_LIBS = support/liblyxsupport.a \
+       $(LIBICONV) $(BOOST_LIBS) @LIBS@ \
+       $(ICONV_LIBS) $(ZLIB_LIBS) $(QT_LIB) $(LIBSHLWAPI)
+
+check_layout_CPPFLAGS = $(AM_CPPFLAGS)
+check_layout_LDADD = $(check_layout_LYX_OBJS) $(TESTS_LIBS)
+check_layout_LDFLAGS = $(QT_LDFLAGS) $(ADD_FRAMEWORKS)
+check_layout_SOURCES = \
+       tests/check_layout.cpp
+check_layout_LYX_OBJS = \
+       insets/InsetLayout.o \
+       CiteEnginesList.o \
+       Color.o \
+       Counters.o \
+       Floating.o \
+       FloatList.o \
+       FontInfo.o \
+       Layout.o \
+       LayoutFile.o \
+       Lexer.o \
+       ModuleList.o \
+       Spacing.o \
+       TextClass.o \
+       tests/dummy_functions.o \
+       tests/boost.o
+
+check_ExternalTransforms_CPPFLAGS = $(AM_CPPFLAGS)
+check_ExternalTransforms_LDADD = $(check_ExternalTransforms_LYX_OBJS) $(TESTS_LIBS)
+check_ExternalTransforms_LDFLAGS = $(QT_LDFLAGS) $(ADD_FRAMEWORKS)
+check_ExternalTransforms_SOURCES = \
+       tests/check_ExternalTransforms.cpp
+check_ExternalTransforms_LYX_OBJS = \
+       tests/dummy_functions.o \
+       tests/boost.o \
+       graphics/GraphicsParams.o \
+       insets/ExternalTransforms.o \
+       Length.o \
+       lengthcommon.o
+
+check_Length_CPPFLAGS = $(AM_CPPFLAGS)
+check_Length_LDADD = $(check_Length_LYX_OBJS) $(TESTS_LIBS)
+check_Length_LDFLAGS = $(QT_LDFLAGS) $(ADD_FRAMEWORKS)
+check_Length_SOURCES = \
+       tests/check_Length.cpp
+check_Length_LYX_OBJS = \
+       tests/dummy_functions.o \
+       tests/boost.o \
+       Length.o \
+       lengthcommon.o
+
+check_ListingsCaption_CPPFLAGS = $(AM_CPPFLAGS)
+check_ListingsCaption_LDADD = $(check_ListingsCaption_LYX_OBJS) $(TESTS_LIBS)
+check_ListingsCaption_LDFLAGS = $(QT_LDFLAGS) $(ADD_FRAMEWORKS)
+check_ListingsCaption_SOURCES = \
+       tests/check_ListingsCaption.cpp
+check_ListingsCaption_LYX_OBJS = \
+       tests/dummy_functions.o \
+       tests/boost.o
+
+.PHONY: alltests alltests-recursive updatetests