changeset 15365:48cb1a5bb64d

reorganize libgui build * configure.ac (AC_CONFIG_FILES): Remove libgui/src/Makefile from the list. * libgui/qterminal-module.mk, libgui/src/module.mk: New files, mostly extracted from libgui/src/Makefile.am. Adjust file names as needed. Build convenience libraries in each subdir. * libgui/Makefile.am: Move the remains of libgui/src/Makefile.am here. Include qterminal-module.mk and src/module.mk. * libgui/src/Makefile.am: Delete. * libgui/link-deps.mk: Rename from libgui/src/link-deps.mk. * src/Makefile.am: Include ../libgui/link-deps.mk instead of ../libgui/src/link-deps.mk. (OCTAVE_GUI_LIBS): Use $(top_builddir)/libgui/liboctgui.la instead of $(top_builddir)/libgui/src/liboctgui.la.
author John W. Eaton <jwe@octave.org>
date Wed, 12 Sep 2012 15:08:45 -0400
parents 01c4f5d8a656
children 482d92904aa4
files configure.ac libgui/Makefile.am libgui/link-deps.mk libgui/qterminal-module.mk libgui/src/Makefile.am libgui/src/link-deps.mk libgui/src/module.mk src/Makefile.am
diffstat 7 files changed, 306 insertions(+), 321 deletions(-) [+]
line wrap: on
line diff
--- a/configure.ac
+++ b/configure.ac
@@ -2520,7 +2520,6 @@
   examples/Makefile
   libgnu/Makefile
   libgui/Makefile
-  libgui/src/Makefile
   libinterp/Makefile
   liboctave/Makefile
   liboctave/cruft/Makefile
--- a/libgui/Makefile.am
+++ b/libgui/Makefile.am
@@ -20,8 +20,86 @@
 
 include $(top_srcdir)/build-aux/common.mk
 
-SUBDIRS = src
+AUTOMAKE_OPTIONS = subdir-objects
+
+QT_INCDIR = @QT_INCDIR@
+
+QT_LIBDIR = @QT_LIBDIR@
+
+QT_LIBS = -lQtCore -lQtGui -lQtNetwork -lqscintilla2
+
+QT_LDFLAGS = -L$(QT_LIBDIR)
+
+MOC_CPPFLAGS =
+
+octlib_LTLIBRARIES = liboctgui.la
+
+liboctgui_la_CPPFLAGS = \
+  @OCTGUI_DLL_DEFS@ \
+  -I$(QT_INCDIR) \
+  -I$(QT_INCDIR)/QtCore \
+  -I$(QT_INCDIR)/QtGui \
+  -I$(QT_INCDIR)/QtNetwork \
+  -I$(srcdir)/qterminal/libqterminal \
+  -Isrc -I$(srcdir)/src \
+  -I$(srcdir)/src/m-editor \
+  -I$(srcdir)/src/octave-adapter \
+  -I$(srcdir)/src/qtinfo \
+  -I$(top_srcdir)/liboctave/cruft/misc \
+  -I$(top_srcdir)/liboctave/array \
+  -I$(top_builddir)/liboctave/numeric -I$(top_srcdir)/liboctave/numeric \
+  -I$(top_builddir)/liboctave/operators -I$(top_srcdir)/liboctave/operators \
+  -I$(top_srcdir)/liboctave/system \
+  -I$(top_srcdir)/liboctave/util \
+  -I$(top_srcdir)/libinterp \
+  -I$(top_builddir)/libinterp/parse-tree -I$(top_srcdir)/libinterp/parse-tree \
+  -I$(top_builddir)/libinterp/interp-core -I$(top_srcdir)/libinterp/interp-core \
+  -I$(top_builddir)/libinterp/interpfcn -I$(top_srcdir)/libinterp/interpfcn \
+  -I$(top_srcdir)/libinterp/octave-value
+
+EXTRA_DIST = default-qt-settings
+
+BUILT_SOURCES =
+
+CLEANFILES =
+
+noinst_HEADERS =
+
+noinst_LTLIBRARIES =
+
+include src/module.mk
+include qterminal-module.mk
+
+include link-deps.mk
+
+liboctgui_la_LIBADD = \
+  qterminal/libqterminal.la \
+  src/libgui-src.la \
+  $(top_builddir)/libinterp/liboctinterp.la \
+  $(top_builddir)/liboctave/liboctave.la \
+  $(LIBOCTGUI_LINK_DEPS)
+
+# Increment these as needed and according to the rules in the libtool manual:
+liboctgui_current = 0
+liboctgui_revision = 0
+liboctgui_age = 0
+
+liboctgui_version_info = $(liboctgui_current):$(liboctgui_revision):$(liboctgui_age)
+
+liboctgui_la_LDFLAGS = \
+  -version-info $(liboctgui_version_info) \
+  $(NO_UNDEFINED_LDFLAG) \
+  -bindir $(bindir) \
+  $(LIBOCTGUI_LINK_OPTS)
 
 octetc_DATA = default-qt-settings
 
-EXTRA_DIST = default-qt-settings
+moc-%.cc: %.h
+	@MOC@ -o$@ $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(MOC_CPPFLAGS) $(liboctgui_la_CPPFLAGS) $<
+
+ui-%.h: %.ui
+	@UIC@ -o $@ $<
+
+qrc-%.cc: %.qrc
+	@RCC@ -o $@ $<
+
rename from libgui/src/link-deps.mk
rename to libgui/link-deps.mk
new file mode 100644
--- /dev/null
+++ b/libgui/qterminal-module.mk
@@ -0,0 +1,87 @@
+EXTRA_DIST += \
+  qterminal-module.mk
+
+noinst_HEADERS += \
+  qterminal/libqterminal/QTerminal.h \
+  qterminal/libqterminal/QTerminalInterface.h \
+  qterminal/libqterminal/win32/QTerminalColors.h \
+  qterminal/libqterminal/win32/QWinTerminalImpl.h \
+  qterminal/libqterminal/unix/BlockArray.h \
+  qterminal/libqterminal/unix/Character.h \
+  qterminal/libqterminal/unix/CharacterColor.h \
+  qterminal/libqterminal/unix/Emulation.h \
+  qterminal/libqterminal/unix/ExtendedDefaultTranslator.h \
+  qterminal/libqterminal/unix/Filter.h \
+  qterminal/libqterminal/unix/History.h \
+  qterminal/libqterminal/unix/KeyboardTranslator.h \
+  qterminal/libqterminal/unix/konsole_wcwidth.h \
+  qterminal/libqterminal/unix/kpty.h \
+  qterminal/libqterminal/unix/kpty_p.h \
+  qterminal/libqterminal/unix/LineFont.h \
+  qterminal/libqterminal/unix/QUnixTerminalImpl.h \
+  qterminal/libqterminal/unix/Screen.h \
+  qterminal/libqterminal/unix/ScreenWindow.h \
+  qterminal/libqterminal/unix/TerminalCharacterDecoder.h \
+  qterminal/libqterminal/unix/Vt102Emulation.h \
+  qterminal/libqterminal/unix/SelfListener.h \
+  qterminal/libqterminal/unix/TerminalModel.h \
+  qterminal/libqterminal/unix/TerminalView.h
+
+qterminal_libqterminal_la_MOC = \
+  qterminal/libqterminal/moc-QTerminal.cc \
+  qterminal/libqterminal/moc-QTerminalInterface.cc
+
+nodist_qterminal_libqterminal_la_SOURCES = $(qterminal_libqterminal_la_MOC)
+
+qterminal_libqterminal_la_CPPFLAGS = \
+  -I$(QT_INCDIR) \
+  -I$(QT_INCDIR)/QtCore \
+  -I$(QT_INCDIR)/QtGui \
+  -I$(srcdir)/qterminal/libqterminal
+
+if WIN32_TERMINAL
+
+qterminal_libqterminal_la_SOURCES = \
+  qterminal/libqterminal/win32/QTerminalColors.cpp \
+  qterminal/libqterminal/win32/QWinTerminalImpl.cpp
+
+qterminal_libqterminal_la_MOC += qterminal/libqterminal/win32/moc-QWinTerminalImpl.cc
+qterminal_libqterminal_la_CPPFLAGS += -DUNICODE
+
+# This flag is required to let MOC know about Q_OS_WIN32.
+MOC_CPPFLAGS += -DWIN32
+
+else
+
+qterminal_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_la_MOC += \
+  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
+
+noinst_LTLIBRARIES += qterminal/libqterminal.la
+
+CLEANFILES += $(qterminal_libqterminal_la_MOC)
deleted file mode 100644
--- a/libgui/src/Makefile.am
+++ /dev/null
@@ -1,316 +0,0 @@
-# Copyright (C) 2012 John W. Eaton
-#
-# This file is part of Octave.
-#
-# Octave is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 3 of the License, or (at
-# your option) any later version.
-#
-# Octave is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-# for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Octave; see the file COPYING.  If not, see
-# <http://www.gnu.org/licenses/>.
-
-include $(top_srcdir)/build-aux/common.mk
-
-QT_INCDIR = @QT_INCDIR@
-
-QT_LIBDIR = @QT_LIBDIR@
-
-QT_LIBS = -lQtCore -lQtGui -lQtNetwork -lqscintilla2
-
-QT_LDFLAGS = -L$(QT_LIBDIR)
-
-MOC_CPPFLAGS =
-
-SRCDIRS = \
-  m-editor \
-  qtinfo \
-  octave-adapter \
-  ../qterminal/libqterminal/unix \
-  ../qterminal/libqterminal/win32 \
-  ../qterminal/libqterminal \
-  ../qterminal
-
-octave_gui_MOC = \
-  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))
-
-octave_gui_RC = qrc-resource.cc
-
-octlib_LTLIBRARIES = liboctgui.la
-
-liboctgui_la_SOURCES = \
-  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
-
-nodist_liboctgui_la_SOURCES = $(octave_gui_MOC) $(octave_gui_RC)
-
-liboctgui_la_CPPFLAGS = \
-  @OCTGUI_DLL_DEFS@ \
-  -I$(QT_INCDIR) \
-  -I$(QT_INCDIR)/QtCore \
-  -I$(QT_INCDIR)/QtGui \
-  -I$(QT_INCDIR)/QtNetwork \
-  -I$(srcdir)/../qterminal/libqterminal \
-  -I$(srcdir)/m-editor \
-  -I$(srcdir)/octave-adapter \
-  -I$(srcdir)/qtinfo \
-  -I$(top_srcdir)/liboctave/cruft/misc \
-  -I$(top_srcdir)/liboctave/array \
-  -I$(top_builddir)/liboctave/numeric -I$(top_srcdir)/liboctave/numeric \
-  -I$(top_builddir)/liboctave/operators -I$(top_srcdir)/liboctave/operators \
-  -I$(top_srcdir)/liboctave/system \
-  -I$(top_srcdir)/liboctave/util \
-  -I$(top_srcdir)/libinterp \
-  -I$(top_builddir)/libinterp/parse-tree -I$(top_srcdir)/libinterp/parse-tree \
-  -I$(top_builddir)/libinterp/interp-core -I$(top_srcdir)/libinterp/interp-core \
-  -I$(top_builddir)/libinterp/interpfcn -I$(top_srcdir)/libinterp/interpfcn \
-  -I$(top_srcdir)/libinterp/octave-value
-
-include link-deps.mk
-
-liboctgui_la_LIBADD = \
-  libqterminal.la \
-  $(top_builddir)/libinterp/liboctinterp.la \
-  $(top_builddir)/liboctave/liboctave.la \
-  $(LIBOCTGUI_LINK_DEPS)
-
-# Increment these as needed and according to the rules in the libtool manual:
-liboctgui_current = 0
-liboctgui_revision = 0
-liboctgui_age = 0
-
-liboctgui_version_info = $(liboctgui_current):$(liboctgui_revision):$(liboctgui_age)
-
-liboctgui_la_LDFLAGS = \
-  -version-info $(liboctgui_version_info) \
-  $(NO_UNDEFINED_LDFLAG) \
-  -bindir $(bindir) \
-  $(LIBOCTGUI_LINK_OPTS)
-
-noinst_HEADERS = \
-  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-gui.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)
-
-clean-local:
-	-if test "$(srcdir)" != "."; then \
-	   for d in $(SRCDIRS); do test -d $$d && rmdir $$d; done \
-	 fi
-
-BUILT_SOURCES = $(octave_gui_UI_H)
-
-octave_gui_ICONS = \
-  icons/arrow_right.png \
-  icons/artsbuilderexecute.png \
-  icons/bookmark.png \
-  icons/bp_next.png \
-  icons/bp_prev.png \
-  icons/bp_rm_all.png \
-  icons/bp_toggle.png \
-  icons/chat.png \
-  icons/configure.png \
-  icons/db_cont.png \
-  icons/db_step_in.png \
-  icons/db_step_out.png \
-  icons/db_step.png \
-  icons/db_stop.png \
-  icons/editcopy.png \
-  icons/editcut.png \
-  icons/editpaste.png \
-  icons/filenew.png \
-  icons/fileopen.png \
-  icons/filesaveas.png \
-  icons/filesave.png \
-  icons/find.png \
-  icons/help_index.png \
-  icons/icons_license \
-  icons/jabber_protocol.png \
-  icons/logo.png \
-  icons/question.png \
-  icons/redled.png \
-  icons/redo.png \
-  icons/search.png \
-  icons/star.png \
-  icons/stop.png \
-  icons/terminal.png \
-  icons/undo.png \
-  icons/up.png \
-  icons/zoom-in.png \
-  icons/zoom-out.png
-
-EXTRA_DIST = \
-  $(octave_gui_UI) \
-  $(octave_gui_ICONS) \
-  resource.qrc
-
-noinst_LTLIBRARIES = libqterminal.la
-
-noinst_HEADERS += \
-  ../qterminal/libqterminal/QTerminal.h \
-  ../qterminal/libqterminal/QTerminalInterface.h \
-  ../qterminal/libqterminal/win32/QTerminalColors.h \
-  ../qterminal/libqterminal/win32/QWinTerminalImpl.h \
-  ../qterminal/libqterminal/unix/BlockArray.h \
-  ../qterminal/libqterminal/unix/Character.h \
-  ../qterminal/libqterminal/unix/CharacterColor.h \
-  ../qterminal/libqterminal/unix/Emulation.h \
-  ../qterminal/libqterminal/unix/ExtendedDefaultTranslator.h \
-  ../qterminal/libqterminal/unix/Filter.h \
-  ../qterminal/libqterminal/unix/History.h \
-  ../qterminal/libqterminal/unix/KeyboardTranslator.h \
-  ../qterminal/libqterminal/unix/konsole_wcwidth.h \
-  ../qterminal/libqterminal/unix/kpty.h \
-  ../qterminal/libqterminal/unix/kpty_p.h \
-  ../qterminal/libqterminal/unix/LineFont.h \
-  ../qterminal/libqterminal/unix/QUnixTerminalImpl.h \
-  ../qterminal/libqterminal/unix/Screen.h \
-  ../qterminal/libqterminal/unix/ScreenWindow.h \
-  ../qterminal/libqterminal/unix/TerminalCharacterDecoder.h \
-  ../qterminal/libqterminal/unix/Vt102Emulation.h \
-  ../qterminal/libqterminal/unix/SelfListener.h \
-  ../qterminal/libqterminal/unix/TerminalModel.h \
-  ../qterminal/libqterminal/unix/TerminalView.h
-
-libqterminal_la_CPPFLAGS = \
-  -I$(QT_INCDIR) \
-  -I$(QT_INCDIR)/QtCore \
-  -I$(QT_INCDIR)/QtGui \
-  -I$(srcdir)/../qterminal/libqterminal
-
-libqterminal_la_MOC = \
-  ../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.cc
-libqterminal_la_CPPFLAGS += -DUNICODE
-
-# This flag is required to let MOC know about Q_OS_WIN32.
-MOC_CPPFLAGS += -DWIN32
-
-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
-
-libqterminal_la_MOC += \
-  ../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
-
-moc-%.cc: %.h
-	test -d $(@D) || mkdir -p $(@D)
-	@MOC@ -o$@ $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(MOC_CPPFLAGS) $(liboctgui_la_CPPFLAGS) $<
-
-ui-%.h: %.ui
-	@UIC@ -o $@ $<
-
-qrc-%.cc: %.qrc
-	@RCC@ -o $@ $<
-
-CLEANFILES += $(libqterminal_la_MOC)
-
new file mode 100644
--- /dev/null
+++ b/libgui/src/module.mk
@@ -0,0 +1,137 @@
+EXTRA_DIST += \
+  src/module.mk \
+  src/resource.qrc \
+  $(octave_gui_UI) \
+  $(octave_gui_ICONS)
+
+octave_gui_MOC = \
+  src/m-editor/moc-file-editor-interface.cc \
+  src/m-editor/moc-file-editor-tab.cc \
+  src/m-editor/moc-file-editor.cc \
+  src/m-editor/moc-find-dialog.cc \
+  src/m-editor/moc-lexer-octave-gui.cc \
+  src/moc-documentation-dockwidget.cc \
+  src/moc-files-dockwidget.cc \
+  src/moc-history-dockwidget.cc \
+  src/moc-main-window.cc \
+  src/moc-octave-qt-event-listener.cc \
+  src/moc-settings-dialog.cc \
+  src/moc-terminal-dockwidget.cc \
+  src/moc-welcome-wizard.cc \
+  src/moc-workspace-model.cc \
+  src/moc-workspace-view.cc \
+  src/octave-adapter/moc-octave-main-thread.cc \
+  src/qtinfo/moc-parser.cc \
+  src/qtinfo/moc-webinfo.cc
+
+octave_gui_UI = \
+  src/settings-dialog.ui \
+  src/welcome-wizard.ui
+
+octave_gui_UI_H = $(patsubst src/%.ui, src/ui-%.h, $(octave_gui_UI))
+
+octave_gui_RC = src/qrc-resource.cc
+
+liboctgui_la_SOURCES = \
+  src/documentation-dockwidget.cc \
+  src/files-dockwidget.cc \
+  src/history-dockwidget.cc \
+  src/m-editor/file-editor-tab.cc \
+  src/m-editor/file-editor.cc \
+  src/m-editor/find-dialog.cc \
+  src/m-editor/lexer-octave-gui.cc \
+  src/main-window.cc \
+  src/octave-adapter/octave-event.cc \
+  src/octave-adapter/octave-link.cc \
+  src/octave-adapter/octave-main-thread.cc \
+  src/octave-gui.cc \
+  src/octave-qt-event-listener.cc \
+  src/qtinfo/parser.cc \
+  src/qtinfo/webinfo.cc \
+  src/resource-manager.cc \
+  src/settings-dialog.cc \
+  src/symbol-information.cc \
+  src/terminal-dockwidget.cc \
+  src/welcome-wizard.cc \
+  src/workspace-model.cc \
+  src/workspace-view.cc
+
+nodist_liboctgui_la_SOURCES = $(octave_gui_MOC) $(octave_gui_RC)
+
+noinst_HEADERS += \
+  src/documentation-dockwidget.h \
+  src/files-dockwidget.h \
+  src/history-dockwidget.h \
+  src/m-editor/file-editor-interface.h \
+  src/m-editor/file-editor-tab.h \
+  src/m-editor/file-editor.h \
+  src/m-editor/find-dialog.h \
+  src/m-editor/lexer-octave-gui.h \
+  src/main-window.h \
+  src/octave-adapter/octave-event-listener.h \
+  src/octave-adapter/octave-event-observer.h \
+  src/octave-adapter/octave-event.h \
+  src/octave-adapter/octave-link.h \
+  src/octave-adapter/octave-main-thread.h \
+  src/octave-gui.h \
+  src/octave-qt-event-listener.h \
+  src/qtinfo/parser.h \
+  src/qtinfo/webinfo.h \
+  src/resource-manager.h \
+  src/settings-dialog.h \
+  src/symbol-information.h \
+  src/terminal-dockwidget.h \
+  src/welcome-wizard.h \
+  src/workspace-model.h \
+  src/workspace-view.h
+
+CLEANFILES += \
+  $(octave_gui_MOC) \
+  $(octave_gui_UI_H) \
+  $(octave_gui_RC)
+
+BUILT_SOURCES += $(octave_gui_UI_H)
+
+octave_gui_ICONS = \
+  src/icons/arrow_right.png \
+  src/icons/artsbuilderexecute.png \
+  src/icons/bookmark.png \
+  src/icons/bp_next.png \
+  src/icons/bp_prev.png \
+  src/icons/bp_rm_all.png \
+  src/icons/bp_toggle.png \
+  src/icons/chat.png \
+  src/icons/configure.png \
+  src/icons/db_cont.png \
+  src/icons/db_step_in.png \
+  src/icons/db_step_out.png \
+  src/icons/db_step.png \
+  src/icons/db_stop.png \
+  src/icons/editcopy.png \
+  src/icons/editcut.png \
+  src/icons/editpaste.png \
+  src/icons/filenew.png \
+  src/icons/fileopen.png \
+  src/icons/filesaveas.png \
+  src/icons/filesave.png \
+  src/icons/find.png \
+  src/icons/help_index.png \
+  src/icons/icons_license \
+  src/icons/jabber_protocol.png \
+  src/icons/logo.png \
+  src/icons/question.png \
+  src/icons/redled.png \
+  src/icons/redo.png \
+  src/icons/search.png \
+  src/icons/star.png \
+  src/icons/stop.png \
+  src/icons/terminal.png \
+  src/icons/undo.png \
+  src/icons/up.png \
+  src/icons/zoom-in.png \
+  src/icons/zoom-out.png
+
+noinst_LTLIBRARIES += src/libgui-src.la
+
+src_libgui_src_la_SOURCES = $(GUI_SRC_SRC)
+src_libgui_src_la_CPPFLAGS = $(liboctgui_la_CPPFLAGS)
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -73,7 +73,7 @@
   $(top_builddir)/libinterp/liboctinterp.la \
   $(top_builddir)/liboctave/liboctave.la
 
-include ../libgui/src/link-deps.mk
+include ../libgui/link-deps.mk
 
 octave_cli_SOURCES = main-cli.cc
 
@@ -87,7 +87,7 @@
 
 if AMCOND_BUILD_GUI
   octave_SOURCES = main.cc
-  OCTAVE_GUI_LIBS = $(top_builddir)/libgui/src/liboctgui.la
+  OCTAVE_GUI_LIBS = $(top_builddir)/libgui/liboctgui.la
   OCTAVE_GUI_CPPFLAGS = -I$(top_srcdir)/libgui/src
 else
   octave_SOURCES = main-cli.cc