]> git.lyx.org Git - lyx.git/blobdiff - src/Makefile.am
Fix distcheck target
[lyx.git] / src / Makefile.am
index 17c7a25b056bb66252b5dfc0c07bb70742b685a4..1fd0fef6dcadbd4579bfb3b91a50d2ede6b62b8d 100644 (file)
@@ -2,19 +2,27 @@ include $(top_srcdir)/config/common.am
 
 ############################### Core  ##############################
 
-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
 endif
 
-SUBDIRS = support frontends . $(CLIENT) tex2lyx
+SUBDIRS = support frontends . $(CLIENT) tex2lyx convert
 
-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) $(MYTHES_LIBS) $(ENCHANT_LIBS) $(HUNSPELL_LIBS) \
-            @LIBS@ $(SOCKET_LIBS) $(LIBSHLWAPI) $(LIBPSAPI)
+            @LIBS@ $(ICONV_LIBS) $(ZLIB_LIBS) $(SOCKET_LIBS) \
+           $(LIBSHLWAPI) $(LIBPSAPI)
 
 noinst_LIBRARIES = liblyxcore.a
 bin_PROGRAMS = lyx
@@ -28,23 +36,22 @@ 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 \
+       -Wl,-headerpad_max_install_names
 endif
 
-#lyx_LDFLAGS=-Wl,-O1
-
-BUILT_SOURCES = $(PCH_FILE)
-
 if INSTALL_MACOSX
 APPLESPELL = AppleSpellChecker.cpp AppleSpellChecker.h
 endif
@@ -64,10 +71,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) \
@@ -96,7 +99,6 @@ endif
 
 SOURCEFILESCORE = \
        Author.cpp \
-       Bidi.cpp \
        boost.cpp \
        BranchList.cpp \
        Buffer.cpp \
@@ -107,6 +109,7 @@ SOURCEFILESCORE = \
        Bullet.cpp \
        Changes.cpp \
        Chktex.cpp \
+       CiteEnginesList.cpp \
        CmdDef.cpp \
        Color.cpp \
        ConverterCache.cpp \
@@ -119,6 +122,7 @@ SOURCEFILESCORE = \
        DepTable.cpp \
        DocIterator.cpp \
        Encoding.cpp \
+       BufferEncodings.cpp \
        ErrorList.cpp \
        Exporter.cpp \
        factory.cpp \
@@ -131,7 +135,6 @@ SOURCEFILESCORE = \
        FuncRequest.cpp \
        FuncStatus.cpp \
        Graph.cpp \
-       HSpace.cpp \
        IndicesList.cpp \
        InsetIterator.cpp \
        InsetList.cpp \
@@ -167,20 +170,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 \
@@ -190,15 +194,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 \
@@ -232,7 +237,6 @@ HEADERFILESCORE = \
        FuncRequest.h \
        FuncStatus.h \
        Graph.h \
-       HSpace.h \
        IndicesList.h \
        InsetIterator.h \
        InsetList.h \
@@ -272,7 +276,7 @@ HEADERFILESCORE = \
        ParIterator.h \
        PDFOptions.h \
        Row.h \
-       rowpainter.h \
+       RowPainter.h \
        Server.h \
        ServerSocket.h \
        Session.h \
@@ -280,11 +284,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 \
@@ -298,15 +304,35 @@ STANDALONEFILES = \
        Layout.cpp
 
 
+.PHONY: update_commit_hash
+
+LCH_V_CHK = $(lch__v_CHK_@AM_V@)
+lch__v_CHK_ = $(lch__v_CHK_@AM_DEFAULT_V@)
+lch__v_CHK_0 = @echo "  CHK      lyx_commit_hash.h";
+lch__v_CHK_1 =
+
+update_commit_hash:
+       $(LCH_V_CHK)rm -f hash-temp ; \
+       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
 
@@ -316,7 +342,7 @@ endif
 
 #########################  Qt stuff  ##############################
 
-MOCHEADER = Compare.h
+MOCHEADER = Compare.h PreviewLoader.h
 
 if INSTALL_WINDOWS
 
@@ -330,8 +356,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)
 
@@ -365,7 +394,6 @@ liblyxgraphics_a_SOURCES = \
 noinst_LIBRARIES += liblyxmathed.a
 
 SOURCEFILESMATHED = \
-       mathed/CommandInset.cpp \
        mathed/InsetMathAMSArray.cpp \
        mathed/InsetMathArray.cpp \
        mathed/InsetMathBig.cpp \
@@ -373,13 +401,18 @@ 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/InsetMathCommand.cpp \
        mathed/InsetMathComment.cpp \
        mathed/InsetMathDecoration.cpp \
        mathed/InsetMathDecoration.h \
        mathed/InsetMathDelim.cpp \
+       mathed/InsetMathDiagram.cpp \
        mathed/InsetMathDiff.cpp \
        mathed/InsetMathDots.cpp \
        mathed/InsetMathEnsureMath.cpp \
@@ -394,8 +427,9 @@ SOURCEFILESMATHED = \
        mathed/InsetMathKern.cpp \
        mathed/InsetMathLefteqn.cpp \
        mathed/InsetMathLim.cpp \
-       mathed/InsetMathCancel.cpp \
-       mathed/InsetMathCancelto.cpp \
+       mathed/InsetMathMacro.cpp \
+       mathed/InsetMathMacroArgument.cpp \
+       mathed/InsetMathMacroTemplate.cpp \
        mathed/InsetMathMatrix.cpp \
        mathed/InsetMathNest.cpp \
        mathed/InsetMathNumber.cpp \
@@ -420,23 +454,20 @@ SOURCEFILESMATHED = \
        mathed/InsetMathUnknown.cpp \
        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
 
 HEADERFILESMATHED = \
-       mathed/CommandInset.h \
        mathed/InsetMathAMSArray.h \
        mathed/InsetMathArray.h \
        mathed/InsetMathBig.h \
@@ -447,7 +478,9 @@ HEADERFILESMATHED = \
        mathed/InsetMathCancelto.h \
        mathed/InsetMathCases.h \
        mathed/InsetMathChar.h \
+       mathed/InsetMathClass.h \
        mathed/InsetMathColor.h \
+       mathed/InsetMathCommand.h \
        mathed/InsetMathComment.h \
        mathed/InsetMathDelim.h \
        mathed/InsetMathDiff.h \
@@ -465,6 +498,9 @@ HEADERFILESMATHED = \
        mathed/InsetMathKern.h \
        mathed/InsetMathLefteqn.h \
        mathed/InsetMathLim.h \
+       mathed/InsetMathMacro.h \
+       mathed/InsetMathMacroArgument.h \
+       mathed/InsetMathMacroTemplate.h \
        mathed/InsetMathMatrix.h \
        mathed/InsetMathNest.h \
        mathed/InsetMathNumber.h \
@@ -492,30 +528,30 @@ 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/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
 
@@ -541,8 +577,9 @@ SOURCEFILESINSETS = \
        insets/InsetBox.cpp \
        insets/InsetBranch.cpp \
        insets/InsetCaption.cpp \
+       insets/InsetCaptionable.cpp \
        insets/InsetCitation.cpp \
-       insets/InsetCollapsable.cpp \
+       insets/InsetCollapsible.cpp \
        insets/InsetCommand.cpp \
        insets/InsetCommandParams.cpp \
        insets/InsetERT.cpp \
@@ -575,6 +612,7 @@ SOURCEFILESINSETS = \
        insets/InsetQuotes.cpp \
        insets/InsetRef.cpp \
        insets/InsetScript.cpp \
+       insets/InsetSeparator.cpp \
        insets/InsetSpace.cpp \
        insets/InsetSpecialChar.cpp \
        insets/InsetTabular.cpp \
@@ -598,9 +636,10 @@ HEADERFILESINSETS = \
        insets/InsetBox.h \
        insets/InsetBranch.h \
        insets/InsetCaption.h \
+       insets/InsetCaptionable.h \
        insets/InsetCitation.h \
        insets/InsetCode.h \
-       insets/InsetCollapsable.h \
+       insets/InsetCollapsible.h \
        insets/InsetCommand.h \
        insets/InsetCommandParams.h \
        insets/InsetERT.h \
@@ -633,6 +672,7 @@ HEADERFILESINSETS = \
        insets/InsetQuotes.h \
        insets/InsetRef.h \
        insets/InsetScript.h \
+       insets/InsetSeparator.h \
        insets/InsetSpace.h \
        insets/InsetSpecialChar.h \
        insets/InsetTabular.h \
@@ -641,20 +681,16 @@ 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
 
@@ -666,36 +702,100 @@ endif
 ############################## Tests ##################################
 
 EXTRA_DIST += \
-       tests/test_layout
-
-
-TESTS = \
-       tests/test_layout
+       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
 
-check_layout_CPPFLAGS = $(AM_CPPFLAGS) -DNO_LAYOUT_CSS
-check_layout_LDADD = support/liblyxsupport.a $(LIBICONV) $(BOOST_LIBS) @LIBS@ $(QT4_CORE_LIBS) $(LIBSHLWAPI)
-check_layout_LDFLAGS = $(QT4_CORE_LDFLAGS) $(ADD_FRAMEWORKS)
+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 = \
-       insets/InsetLayout.cpp \
-       Color.cpp \
-       Counters.cpp \
-       Floating.cpp \
-       FloatList.cpp \
-       FontInfo.cpp \
-       Layout.cpp \
-       LayoutFile.cpp \
-       Lexer.cpp \
-       ModuleList.cpp \
-       Spacing.cpp \
-       TextClass.cpp \
        tests/check_layout.cpp \
-       support/tests/boost.cpp \
-       support/tests/dummy_functions.cpp
-
+       tests/dummy_functions.cpp \
+       tests/boost.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
+
+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 \
+       tests/dummy_functions.cpp \
+       tests/boost.cpp
+check_ExternalTransforms_LYX_OBJS = \
+       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 \
+       tests/dummy_functions.cpp \
+       tests/boost.cpp
+check_Length_LYX_OBJS = \
+       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 \
+       tests/dummy_functions.cpp \
+       tests/boost.cpp
+check_ListingsCaption_LYX_OBJS =
+
+.PHONY: alltests alltests-recursive updatetests