# HG changeset patch # User John W. Eaton # Date 1344700023 14400 # Node ID 141b0b1082926b85b642d4b5ec4598f5766d7b5c # Parent 9e62d5a3a45e547df73b79fc27c11e1f4f4c1eab allow building without gui to work * configure.ac: Enable building GUI by default. Rename OCTAVE_GUI to AMCOND_BUILD_GUI. Don't define or substitute GUIDIR. Don't check for GUI toolkit tools and libraries if building GUI is disabled. * Makefile.am: Use else clause for AMCOND_BUILD_GUI automake conditional. * src/Makefile.am: If not building GUI, make octave and octave-cli binaries identical. * gui/src/Makefile.am: Style fixes. Use - instead of _ and .cc instead of .cpp in generated file names. diff -r 9e62d5a3a45e -r 141b0b108292 Makefile.am --- a/Makefile.am Sat Aug 11 11:02:12 2012 -0400 +++ b/Makefile.am Sat Aug 11 11:47:03 2012 -0400 @@ -67,8 +67,10 @@ include m4/module.mk -if OCTAVE_GUI +if AMCOND_BUILD_GUI GUIDIR = gui +else +GUIDIR = endif # Subdirectories in which to run `make all'. diff -r 9e62d5a3a45e -r 141b0b108292 configure.ac --- a/configure.ac Sat Aug 11 11:02:12 2012 -0400 +++ b/configure.ac Sat Aug 11 11:47:03 2012 -0400 @@ -2149,43 +2149,40 @@ ### GUI/Qt related tests. HAVE_QT=false -GUIDIR= QT_INCDIR= QT_LIBDIR= -AC_CHECK_PROGS(QMAKE, [qmake qmake-qt4 qmake-qt5]) -if test -n "$QMAKE"; then - QT_INCDIR=`$QMAKE -query | sed -n -e 's/^QT_INSTALL_HEADERS://p'` - QT_LIBDIR=`$QMAKE -query | sed -n -e 's/^QT_INSTALL_LIBS://p'` - AC_CHECK_PROGS(MOC, [moc moc-qt4 moc-qt5]) - AC_CHECK_PROGS(UIC, [uic uic-qt4 uic-qt5]) - AC_CHECK_PROGS(RCC, [rcc]) - if test -n "$MOC" && test -n "$UIC" && test -n "$RCC"; then - HAVE_QT=true - AC_DEFINE([HAVE_QT], 1, [Define to 1 if Qt is available (must have moc, uic, and rcc programs and developer header files and libraries installed)]) - GUIDIR=gui +build_gui=yes +win32_terminal=no +AC_ARG_ENABLE(gui, + [AS_HELP_STRING([--disable-gui], [build GUI (default is yes)])], + [if test "$enableval" = no; then build_gui=no; fi], [build_gui=yes]) + +if test $build_gui = yes; then + AC_CHECK_PROGS(QMAKE, [qmake qmake-qt4 qmake-qt5]) + if test -n "$QMAKE"; then + QT_INCDIR=`$QMAKE -query | sed -n -e 's/^QT_INSTALL_HEADERS://p'` + QT_LIBDIR=`$QMAKE -query | sed -n -e 's/^QT_INSTALL_LIBS://p'` + AC_CHECK_PROGS(MOC, [moc moc-qt4 moc-qt5]) + AC_CHECK_PROGS(UIC, [uic uic-qt4 uic-qt5]) + AC_CHECK_PROGS(RCC, [rcc]) + if test -n "$MOC" && test -n "$UIC" && test -n "$RCC"; then + HAVE_QT=true + AC_DEFINE([HAVE_QT], 1, [Define to 1 if Qt is available (must have moc, uic, and rcc programs and developer header files and libraries installed)]) + fi fi + + case "$canonical_host_type" in + *-*-mingw* | *-*-msdosmsvc*) win32_terminal=yes ;; + *) + AC_CHECK_HEADERS([pty.h libutil.h util.h]) + AC_SEARCH_LIBS([openpty], [util], [AC_DEFINE([HAVE_OPENPTY], [], [Define whether openpty exists])]) + ;; + esac fi +AM_CONDITIONAL([AMCOND_BUILD_GUI], [test $build_gui = yes]) +AM_CONDITIONAL([WIN32_TERMINAL], [test $win32_terminal = yes]) AC_SUBST(QT_INCDIR) AC_SUBST(QT_LIBDIR) -AC_SUBST(GUIDIR) - -case "$canonical_host_type" in - *-*-mingw* | *-*-msdosmsvc*) win32_terminal=yes ;; - *) - win32_terminal=no - AC_CHECK_HEADERS([pty.h libutil.h util.h]) - AC_SEARCH_LIBS([openpty], [util], [AC_DEFINE([HAVE_OPENPTY], [], [Define whether openpty exists])]) - ;; -esac -AM_CONDITIONAL([WIN32_TERMINAL], [test x$win32_terminal = xyes]) - -octave_gui= -AC_ARG_ENABLE(gui, - [AS_HELP_STRING([--enable-gui], [build GUI (default is no)])], - [if test "$enableval" = yes; then - octave_gui=yes - fi], []) -AM_CONDITIONAL([OCTAVE_GUI], [test x$octave_gui = xyes]) ### Run configure in subdirectories. diff -r 9e62d5a3a45e -r 141b0b108292 gui/src/Makefile.am --- a/gui/src/Makefile.am Sat Aug 11 11:02:12 2012 -0400 +++ b/gui/src/Makefile.am Sat Aug 11 11:47:03 2012 -0400 @@ -1,67 +1,75 @@ -SRCDIRS = m-editor qtinfo octave-adapter \ - ../qterminal/libqterminal/unix ../qterminal/libqterminal/win32 ../qterminal/libqterminal ../qterminal +SRCDIRS = \ + m-editor \ + qtinfo \ + octave-adapter \ + ../qterminal/libqterminal/unix \ + ../qterminal/libqterminal/win32 \ + ../qterminal/libqterminal \ + ../qterminal -moc_%.cpp: %.h +moc-%.cc: %.h test -d $(@D) || mkdir -p $(@D) @MOC@ -o$@ $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(liboctgui_la_CPPFLAGS) $< -ui_%.h: %.ui +ui-%.h: %.ui @UIC@ -o $@ $< -qrc_%.cpp: %.qrc +qrc-%.cc: %.qrc @RCC@ -o $@ $< octave_gui_MOC = \ - moc_documentation-dockwidget.cpp \ - moc_files-dockwidget.cpp \ - moc_history-dockwidget.cpp \ - moc_main-window.cpp \ - moc_octave-qt-event-listener.cpp \ - moc_settings-dialog.cpp \ - moc_terminal-dockwidget.cpp \ - moc_welcome-wizard.cpp \ - moc_workspace-model.cpp \ - moc_workspace-view.cpp \ - m-editor/moc_file-editor.cpp \ - m-editor/moc_file-editor-interface.cpp \ - m-editor/moc_file-editor-tab.cpp \ - m-editor/moc_find-dialog.cpp \ - m-editor/moc_lexer-octave-gui.cpp \ - octave-adapter/moc_octave-main-thread.cpp \ - qtinfo/moc_parser.cpp \ - qtinfo/moc_webinfo.cpp + m-editor/moc-file-editor-interface.cc \ + m-editor/moc-file-editor-tab.cc \ + m-editor/moc-file-editor.cc \ + m-editor/moc-find-dialog.cc \ + m-editor/moc-lexer-octave-gui.cc \ + moc-documentation-dockwidget.cc \ + moc-files-dockwidget.cc \ + moc-history-dockwidget.cc \ + moc-main-window.cc \ + moc-octave-qt-event-listener.cc \ + moc-settings-dialog.cc \ + moc-terminal-dockwidget.cc \ + moc-welcome-wizard.cc \ + moc-workspace-model.cc \ + moc-workspace-view.cc \ + octave-adapter/moc-octave-main-thread.cc \ + qtinfo/moc-parser.cc \ + qtinfo/moc-webinfo.cc + octave_gui_UI = \ - settings-dialog.ui \ - welcome-wizard.ui -octave_gui_UI_H = $(patsubst %.ui,ui_%.h,$(octave_gui_UI)) + settings-dialog.ui \ + welcome-wizard.ui -octave_gui_RC = qrc_resource.cpp +octave_gui_UI_H = $(patsubst %.ui, ui-%.h, $(octave_gui_UI)) + +octave_gui_RC = qrc-resource.cc octlib_LTLIBRARIES = liboctgui.la liboctgui_la_SOURCES = \ - documentation-dockwidget.cc \ - files-dockwidget.cc \ - history-dockwidget.cc \ - main-window.cc \ - octave-gui.cc \ - octave-qt-event-listener.cc \ - resource-manager.cc \ - settings-dialog.cc \ - symbol-information.cc \ - terminal-dockwidget.cc \ - welcome-wizard.cc \ - workspace-model.cc \ - workspace-view.cc \ - m-editor/file-editor.cc \ - m-editor/file-editor-tab.cc \ - m-editor/find-dialog.cc \ - m-editor/lexer-octave-gui.cc \ - octave-adapter/octave-event.cc \ - octave-adapter/octave-link.cc \ - octave-adapter/octave-main-thread.cc \ - qtinfo/parser.cc \ - qtinfo/webinfo.cc + documentation-dockwidget.cc \ + files-dockwidget.cc \ + history-dockwidget.cc \ + m-editor/file-editor-tab.cc \ + m-editor/file-editor.cc \ + m-editor/find-dialog.cc \ + m-editor/lexer-octave-gui.cc \ + main-window.cc \ + octave-adapter/octave-event.cc \ + octave-adapter/octave-link.cc \ + octave-adapter/octave-main-thread.cc \ + octave-gui.cc \ + octave-qt-event-listener.cc \ + qtinfo/parser.cc \ + qtinfo/webinfo.cc \ + resource-manager.cc \ + settings-dialog.cc \ + symbol-information.cc \ + terminal-dockwidget.cc \ + welcome-wizard.cc \ + workspace-model.cc \ + workspace-view.cc liboctgui_la_LIBADD = \ libqterminal.la \ @@ -95,30 +103,30 @@ liboctgui_la_LDFLAGS = -L@QT_LIBDIR@ noinst_HEADERS = \ - documentation-dockwidget.h \ - files-dockwidget.h \ - history-dockwidget.h \ - main-window.h \ - octave-qt-event-listener.h \ - resource-manager.h \ - settings-dialog.h \ - symbol-information.h \ - terminal-dockwidget.h \ - welcome-wizard.h \ - workspace-model.h \ - workspace-view.h \ - m-editor/file-editor.h \ - m-editor/file-editor-interface.h \ - m-editor/file-editor-tab.h \ - m-editor/find-dialog.h \ - m-editor/lexer-octave-gui.h \ - octave-adapter/octave-event.h \ - octave-adapter/octave-event-observer.h \ - octave-adapter/octave-event-listener.h \ - octave-adapter/octave-link.h \ - octave-adapter/octave-main-thread.h \ - qtinfo/parser.h \ - qtinfo/webinfo.h + documentation-dockwidget.h \ + files-dockwidget.h \ + history-dockwidget.h \ + m-editor/file-editor-interface.h \ + m-editor/file-editor-tab.h \ + m-editor/file-editor.h \ + m-editor/find-dialog.h \ + m-editor/lexer-octave-gui.h \ + main-window.h \ + octave-adapter/octave-event-listener.h \ + octave-adapter/octave-event-observer.h \ + octave-adapter/octave-event.h \ + octave-adapter/octave-link.h \ + octave-adapter/octave-main-thread.h \ + octave-qt-event-listener.h \ + qtinfo/parser.h \ + qtinfo/webinfo.h \ + resource-manager.h \ + settings-dialog.h \ + symbol-information.h \ + terminal-dockwidget.h \ + welcome-wizard.h \ + workspace-model.h \ + workspace-view.h CLEANFILES = $(octave_gui_MOC) $(octave_gui_UI_H) $(octave_gui_RC) @@ -165,42 +173,48 @@ -I$(srcdir)/../qterminal/libqterminal libqterminal_la_MOC = \ - ../qterminal/libqterminal/moc_QTerminal.cpp \ - ../qterminal/libqterminal/moc_QTerminalInterface.cpp + ../qterminal/libqterminal/moc-QTerminal.cc \ + ../qterminal/libqterminal/moc-QTerminalInterface.cc nodist_libqterminal_la_SOURCES = $(libqterminal_la_MOC) if WIN32_TERMINAL + libqterminal_la_SOURCES = \ - ../qterminal/libqterminal/win32/QTerminalColors.cpp \ - ../qterminal/libqterminal/win32/QWinTerminalImpl.cpp -libqterminal_la_MOC += ../qterminal/libqterminal/win32/moc_QWinTerminalImpl.cpp + ../qterminal/libqterminal/win32/QTerminalColors.cpp \ + ../qterminal/libqterminal/win32/QWinTerminalImpl.cpp + +libqterminal_la_MOC += ../qterminal/libqterminal/win32/moc-QWinTerminalImpl.cc + else + libqterminal_la_SOURCES = \ - ../qterminal/libqterminal/unix/BlockArray.cpp \ - ../qterminal/libqterminal/unix/Emulation.cpp \ - ../qterminal/libqterminal/unix/Filter.cpp \ - ../qterminal/libqterminal/unix/History.cpp \ - ../qterminal/libqterminal/unix/KeyboardTranslator.cpp \ - ../qterminal/libqterminal/unix/konsole_wcwidth.cpp \ - ../qterminal/libqterminal/unix/kpty.cpp \ - ../qterminal/libqterminal/unix/QUnixTerminalImpl.cpp \ - ../qterminal/libqterminal/unix/Screen.cpp \ - ../qterminal/libqterminal/unix/ScreenWindow.cpp \ - ../qterminal/libqterminal/unix/TerminalCharacterDecoder.cpp \ - ../qterminal/libqterminal/unix/Vt102Emulation.cpp \ - ../qterminal/libqterminal/unix/SelfListener.cpp \ - ../qterminal/libqterminal/unix/TerminalModel.cpp \ - ../qterminal/libqterminal/unix/TerminalView.cpp + ../qterminal/libqterminal/unix/BlockArray.cpp \ + ../qterminal/libqterminal/unix/Emulation.cpp \ + ../qterminal/libqterminal/unix/Filter.cpp \ + ../qterminal/libqterminal/unix/History.cpp \ + ../qterminal/libqterminal/unix/KeyboardTranslator.cpp \ + ../qterminal/libqterminal/unix/konsole_wcwidth.cpp \ + ../qterminal/libqterminal/unix/kpty.cpp \ + ../qterminal/libqterminal/unix/QUnixTerminalImpl.cpp \ + ../qterminal/libqterminal/unix/Screen.cpp \ + ../qterminal/libqterminal/unix/ScreenWindow.cpp \ + ../qterminal/libqterminal/unix/TerminalCharacterDecoder.cpp \ + ../qterminal/libqterminal/unix/Vt102Emulation.cpp \ + ../qterminal/libqterminal/unix/SelfListener.cpp \ + ../qterminal/libqterminal/unix/TerminalModel.cpp \ + ../qterminal/libqterminal/unix/TerminalView.cpp + libqterminal_la_MOC += \ - ../qterminal/libqterminal/unix/moc_Emulation.cpp \ - ../qterminal/libqterminal/unix/moc_Filter.cpp \ - ../qterminal/libqterminal/unix/moc_QUnixTerminalImpl.cpp \ - ../qterminal/libqterminal/unix/moc_ScreenWindow.cpp \ - ../qterminal/libqterminal/unix/moc_SelfListener.cpp \ - ../qterminal/libqterminal/unix/moc_TerminalModel.cpp \ - ../qterminal/libqterminal/unix/moc_TerminalView.cpp \ - ../qterminal/libqterminal/unix/moc_Vt102Emulation.cpp + ../qterminal/libqterminal/unix/moc-Emulation.cc \ + ../qterminal/libqterminal/unix/moc-Filter.cc \ + ../qterminal/libqterminal/unix/moc-QUnixTerminalImpl.cc \ + ../qterminal/libqterminal/unix/moc-ScreenWindow.cc \ + ../qterminal/libqterminal/unix/moc-SelfListener.cc \ + ../qterminal/libqterminal/unix/moc-TerminalModel.cc \ + ../qterminal/libqterminal/unix/moc-TerminalView.cc \ + ../qterminal/libqterminal/unix/moc-Vt102Emulation.cc + endif CLEANFILES += $(libqterminal_la_MOC) diff -r 9e62d5a3a45e -r 141b0b108292 gui/src/settings-dialog.cc --- a/gui/src/settings-dialog.cc Sat Aug 11 11:02:12 2012 -0400 +++ b/gui/src/settings-dialog.cc Sat Aug 11 11:47:03 2012 -0400 @@ -17,7 +17,7 @@ #include "resource-manager.h" #include "settings-dialog.h" -#include "ui_settings-dialog.h" +#include "ui-settings-dialog.h" #include settings_dialog::settings_dialog (QWidget * parent): diff -r 9e62d5a3a45e -r 141b0b108292 gui/src/welcome-wizard.cc --- a/gui/src/welcome-wizard.cc Sat Aug 11 11:02:12 2012 -0400 +++ b/gui/src/welcome-wizard.cc Sat Aug 11 11:47:03 2012 -0400 @@ -16,7 +16,7 @@ */ #include "welcome-wizard.h" -#include "ui_welcome-wizard.h" +#include "ui-welcome-wizard.h" welcome_wizard::welcome_wizard (QWidget *parent) : QDialog (parent), diff -r 9e62d5a3a45e -r 141b0b108292 src/Makefile.am --- a/src/Makefile.am Sat Aug 11 11:02:12 2012 -0400 +++ b/src/Makefile.am Sat Aug 11 11:47:03 2012 -0400 @@ -39,8 +39,7 @@ if AMCOND_BUILD_COMPILED_AUX_PROGRAMS bin_PROGRAMS = \ mkoctfile \ - octave \ - octave-cli \ + $(OCTAVE_PROGRAMS) \ octave-config mkoctfile_SOURCES = @@ -235,16 +234,24 @@ $(NO_UNDEFINED_LDFLAG) \ $(OCTAVE_LINK_OPTS) -octave_SOURCES = main.cc +if AMCOND_BUILD_GUI + octave_SOURCES = main.cc + OCTAVE_GUI_LIBS = ../gui/src/liboctgui.la + OCTAVE_GUI_CPPFLAGS = -I$(top_srcdir)/gui/src +else + octave_SOURCES = main-cli.cc + OCTAVE_GUI_LIBS = + OCTAVE_GUI_CPPFLAGS = +endif -octave_CPPFLAGS = -I$(top_srcdir)/gui/src +octave_CPPFLAGS = $(OCTAVE_GUI_CPPFLAGS) octave_LDADD = \ $(OCTAVE_CORE_LIBS) \ - ../gui/src/liboctgui.la \ + $(OCTAVE_GUI_LIBS) \ $(OCTAVE_LINK_DEPS) -octave_LDFLAGS = -DENABLE_GUI=1 $(octave_cli_LDFLAGS) +octave_LDFLAGS = $(octave_cli_LDFLAGS) ## Section for defining and creating DEF_FILES SRC_DEF_FILES := $(shell $(srcdir)/find-defun-files.sh "$(srcdir)" $(DIST_SRC))