# HG changeset patch # User Jacob Dawid # Date 1317773968 -7200 # Node ID 8a688c3179dddf866beb2d16762fcd501570310a # Parent 4eb1247acf8fbbf18ed0c745a943721898dd29ec Added files for build system integration. diff -r 4eb1247acf8f -r 8a688c3179dd configure.ac --- a/configure.ac Tue Oct 04 21:21:29 2011 +0200 +++ b/configure.ac Wed Oct 05 02:19:28 2011 +0200 @@ -707,6 +707,520 @@ FFT_DIR="fftpack" AC_SUBST(FFT_DIR) +dnl @synopsis BNV_HAVE_QT [--with-Qt-dir=DIR] [--with-Qt-lib-dir=DIR] [--with-Qt-lib=LIB] +dnl @synopsis BNV_HAVE_QT [--with-Qt-include-dir=DIR] [--with-Qt-bin-dir=DIR] [--with-Qt-lib-dir=DIR] [--with-Qt-lib=LIB] +dnl +dnl @summary Search for Trolltech's Qt GUI framework. +dnl +dnl Searches common directories for Qt include files, libraries and Qt +dnl binary utilities. The macro supports several different versions of +dnl the Qt framework being installed on the same machine. Without +dnl options, the macro is designed to look for the latest library, +dnl i.e., the highest definition of QT_VERSION in qglobal.h. By use of +dnl one or more options a different library may be selected. There are +dnl two different sets of options. Both sets contain the option +dnl --with-Qt-lib=LIB which can be used to force the use of a +dnl particular version of the library file when more than one are +dnl available. LIB must be in the form as it would appear behind the +dnl "-l" option to the compiler. Examples for LIB would be "qt-mt" for +dnl the multi-threaded version and "qt" for the regular version. In +dnl addition to this, the first set consists of an option +dnl --with-Qt-dir=DIR which can be used when the installation conforms +dnl to Trolltech's standard installation, which means that header files +dnl are in DIR/include, binary utilities are in DIR/bin and the library +dnl is in DIR/lib. The second set of options can be used to indicate +dnl individual locations for the header files, the binary utilities and +dnl the library file, in addition to the specific version of the +dnl library file. +dnl +dnl The following shell variable is set to either "yes" or "no": +dnl +dnl have_qt +dnl +dnl Additionally, the following variables are exported: +dnl +dnl QT_CXXFLAGS +dnl QT_LIBS +dnl QT_MOC +dnl QT_UIC +dnl QT_DIR +dnl +dnl which respectively contain an "-I" flag pointing to the Qt include +dnl directory (and "-DQT_THREAD_SUPPORT" when LIB is "qt-mt"), link +dnl flags necessary to link with Qt and X, the name of the meta object +dnl compiler and the user interface compiler both with full path, and +dnl finaly the variable QTDIR as Trolltech likes to see it defined (if +dnl possible). +dnl +dnl Example lines for Makefile.in: +dnl +dnl CXXFLAGS = @QT_CXXFLAGS@ +dnl MOC = @QT_MOC@ +dnl +dnl After the variables have been set, a trial compile and link is +dnl performed to check the correct functioning of the meta object +dnl compiler. This test may fail when the different detected elements +dnl stem from different releases of the Qt framework. In that case, an +dnl error message is emitted and configure stops. +dnl +dnl No common variables such as $LIBS or $CFLAGS are polluted. +dnl +dnl Options: +dnl +dnl --with-Qt-dir=DIR: DIR is equal to $QTDIR if you have followed the +dnl installation instructions of Trolltech. Header files are in +dnl DIR/include, binary utilities are in DIR/bin and the library is in +dnl DIR/lib. +dnl +dnl --with-Qt-include-dir=DIR: Qt header files are in DIR. +dnl +dnl --with-Qt-bin-dir=DIR: Qt utilities such as moc and uic are in DIR. +dnl +dnl --with-Qt-lib-dir=DIR: The Qt library is in DIR. +dnl +dnl --with-Qt-lib=LIB: Use -lLIB to link with the Qt library. +dnl +dnl If some option "=no" or, equivalently, a --without-Qt-* version is +dnl given in stead of a --with-Qt-*, "have_qt" is set to "no" and the +dnl other variables are set to the empty string. +dnl +dnl @category InstalledPackages +dnl @author Bastiaan Veelo +dnl @version 2006-03-12 +dnl @license AllPermissive + +dnl Copyright (C) 2001, 2002, 2003, 2005, 2006 Bastiaan Veelo + +dnl THANKS! This code includes bug fixes and contributions made by: +dnl Tim McClarren, +dnl Dennis R. Weilert, +dnl Qingning Huo, +dnl Brian Mingus, +dnl Jens Hannemann, +dnl Pavel Roskin, +dnl Scott J. Bertin. + +dnl ChangeLog +dnl 2006-03-12 * Hide output of ls and fix an m4 quoting problem (due to Scott J. Bertin). +dnl 2006-02-13 * Check compiler return value instead of parsing the error stream, +dnl which detected warnings as false negatives (due to Jens Hannemann). +dnl 2006-02-02 * Spelling of "Success". +dnl * Fixed unsave test for $bnv_qt_lib without quotes. +dnl * Put dnl in front of all comments. +dnl * Changed -l$bnv_qt_lib_dir into -L$bnv_qt_lib_dir (all due to Pavel Roskin). +dnl 2006-01-19 * Support for 64bit architectures. +dnl * Updated documentation. +dnl 2006-01-18: * Fix "cat: bnv_qt_test.c: No such file or directory" (due to Jens Hannemann). +dnl * Hide output of failing ls. +dnl 2006-01-11: * Check in /Developer on Mac OS X; Check in $QTDIR (due to Brian Mingus). + +dnl Calls BNV_PATH_QT_DIRECT (contained in this file) as a subroutine. +AC_DEFUN([BNV_HAVE_QT], +[ + AC_REQUIRE([AC_PROG_CXX]) + AC_REQUIRE([AC_PATH_X]) + AC_REQUIRE([AC_PATH_XTRA]) + + AC_MSG_CHECKING(for Qt) + + AC_ARG_WITH([Qt-dir], + [ --with-Qt-dir=DIR DIR is equal to $QTDIR if you have followed the + installation instructions of Trolltech. Header + files are in DIR/include, binary utilities are + in DIR/bin. The library is in DIR/lib, unless + --with-Qt-lib-dir is also set.]) + AC_ARG_WITH([Qt-include-dir], + [ --with-Qt-include-dir=DIR + Qt header files are in DIR]) + AC_ARG_WITH([Qt-bin-dir], + [ --with-Qt-bin-dir=DIR Qt utilities such as moc and uic are in DIR]) + AC_ARG_WITH([Qt-lib-dir], + [ --with-Qt-lib-dir=DIR The Qt library is in DIR]) + AC_ARG_WITH([Qt-lib], + [ --with-Qt-lib=LIB Use -lLIB to link with the Qt library]) + if test x"$with_Qt_dir" = x"no" || + test x"$with_Qt_include-dir" = x"no" || + test x"$with_Qt_bin_dir" = x"no" || + test x"$with_Qt_lib_dir" = x"no" || + test x"$with_Qt_lib" = x"no"; then + # user disabled Qt. Leave cache alone. + have_qt="User disabled Qt." + else + # "yes" is a bogus option + if test x"$with_Qt_dir" = xyes; then + with_Qt_dir= + fi + if test x"$with_Qt_include_dir" = xyes; then + with_Qt_include_dir= + fi + if test x"$with_Qt_bin_dir" = xyes; then + with_Qt_bin_dir= + fi + if test x"$with_Qt_lib_dir" = xyes; then + with_Qt_lib_dir= + fi + if test x"$with_Qt_lib" = xyes; then + with_Qt_lib= + fi + # No Qt unless we discover otherwise + have_qt=no + # Check whether we are requested to link with a specific version + if test x"$with_Qt_lib" != x; then + bnv_qt_lib="$with_Qt_lib" + fi + # Check whether we were supplied with an answer already + if test x"$with_Qt_dir" != x; then + have_qt=yes + bnv_qt_dir="$with_Qt_dir" + bnv_qt_include_dir="$with_Qt_dir/include" + bnv_qt_bin_dir="$with_Qt_dir/bin" + bnv_qt_lib_dir="$with_Qt_dir/lib" + # Only search for the lib if the user did not define one already + if test x"$bnv_qt_lib" = x; then + bnv_qt_lib="`ls $bnv_qt_lib_dir/libqt* | sed -n 1p | + sed s@$bnv_qt_lib_dir/lib@@ | [sed s@[.].*@@]`" + fi + bnv_qt_LIBS="-L$bnv_qt_lib_dir -l$bnv_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS" + else + # Use cached value or do search, starting with suggestions from + # the command line + AC_CACHE_VAL(bnv_cv_have_qt, + [ + # We are not given a solution and there is no cached value. + bnv_qt_dir=NO + bnv_qt_include_dir=NO + bnv_qt_lib_dir=NO + if test x"$bnv_qt_lib" = x; then + bnv_qt_lib=NO + fi + BNV_PATH_QT_DIRECT + if test "$bnv_qt_dir" = NO || + test "$bnv_qt_include_dir" = NO || + test "$bnv_qt_lib_dir" = NO || + test "$bnv_qt_lib" = NO; then + # Problem with finding complete Qt. Cache the known absence of Qt. + bnv_cv_have_qt="have_qt=no" + else + # Record where we found Qt for the cache. + bnv_cv_have_qt="have_qt=yes \ + bnv_qt_dir=$bnv_qt_dir \ + bnv_qt_include_dir=$bnv_qt_include_dir \ + bnv_qt_bin_dir=$bnv_qt_bin_dir \ + bnv_qt_LIBS=\"$bnv_qt_LIBS\"" + fi + ])dnl + eval "$bnv_cv_have_qt" + fi # all $bnv_qt_* are set + fi # $have_qt reflects the system status + if test x"$have_qt" = xyes; then + QT_CXXFLAGS="-I$bnv_qt_include_dir" + if test x"$bnv_qt_lib" = xqt-mt; then + QT_CXXFLAGS="$QT_CXXFLAGS -DQT_THREAD_SUPPORT" + fi + QT_DIR="$bnv_qt_dir" + QT_LIBS="$bnv_qt_LIBS" + # If bnv_qt_dir is defined, utilities are expected to be in the + # bin subdirectory + if test x"$bnv_qt_dir" != x; then + if test -x "$bnv_qt_dir/bin/uic"; then + QT_UIC="$bnv_qt_dir/bin/uic" + else + # Old versions of Qt don't have uic + QT_UIC= + fi + QT_MOC="$bnv_qt_dir/bin/moc" + else + # Or maybe we are told where to look for the utilities + if test x"$bnv_qt_bin_dir" != x; then + if test -x "$bnv_qt_bin_dir/uic"; then + QT_UIC="$bnv_qt_bin_dir/uic" + else + # Old versions of Qt don't have uic + QT_UIC= + fi + QT_MOC="$bnv_qt_bin_dir/moc" + else + # Last possibility is that they are in $PATH + QT_UIC="`which uic`" + QT_MOC="`which moc`" + fi + fi + # All variables are defined, report the result + AC_MSG_RESULT([$have_qt: + QT_CXXFLAGS=$QT_CXXFLAGS + QT_DIR=$QT_DIR + QT_LIBS=$QT_LIBS + QT_UIC=$QT_UIC + QT_MOC=$QT_MOC]) + else + # Qt was not found + QT_CXXFLAGS= + QT_DIR= + QT_LIBS= + QT_UIC= + QT_MOC= + AC_MSG_RESULT($have_qt) + fi + AC_SUBST(QT_CXXFLAGS) + AC_SUBST(QT_DIR) + AC_SUBST(QT_LIBS) + AC_SUBST(QT_UIC) + AC_SUBST(QT_MOC) + + #### Being paranoid: + if test x"$have_qt" = xyes; then + AC_MSG_CHECKING(correct functioning of Qt installation) + AC_CACHE_VAL(bnv_cv_qt_test_result, + [ + cat > bnv_qt_test.h << EOF +#include +class Test : public QObject +{ +Q_OBJECT +public: + Test() {} + ~Test() {} +public slots: + void receive() {} +signals: + void send(); +}; +EOF + + cat > bnv_qt_main.$ac_ext << EOF +#include "bnv_qt_test.h" +#include +int main( int argc, char **argv ) +{ + QApplication app( argc, argv ); + Test t; + QObject::connect( &t, SIGNAL(send()), &t, SLOT(receive()) ); +} +EOF + + bnv_cv_qt_test_result="failure" + bnv_try_1="$QT_MOC bnv_qt_test.h -o moc_bnv_qt_test.$ac_ext >/dev/null 2>/dev/null" + AC_TRY_EVAL(bnv_try_1) + if test x"$ac_status" != x0; then + echo "$bnv_err_1" >&AC_FD_CC + echo "configure: could not run $QT_MOC on:" >&AC_FD_CC + cat bnv_qt_test.h >&AC_FD_CC + else + bnv_try_2="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o moc_bnv_qt_test.o moc_bnv_qt_test.$ac_ext >/dev/null 2>/dev/null" + AC_TRY_EVAL(bnv_try_2) + if test x"$ac_status" != x0; then + echo "$bnv_err_2" >&AC_FD_CC + echo "configure: could not compile:" >&AC_FD_CC + cat moc_bnv_qt_test.$ac_ext >&AC_FD_CC + else + bnv_try_3="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o bnv_qt_main.o bnv_qt_main.$ac_ext >/dev/null 2>/dev/null" + AC_TRY_EVAL(bnv_try_3) + if test x"$ac_status" != x0; then + echo "$bnv_err_3" >&AC_FD_CC + echo "configure: could not compile:" >&AC_FD_CC + cat bnv_qt_main.$ac_ext >&AC_FD_CC + else + bnv_try_4="$CXX $QT_LIBS $LIBS -o bnv_qt_main bnv_qt_main.o moc_bnv_qt_test.o >/dev/null 2>/dev/null" + AC_TRY_EVAL(bnv_try_4) + if test x"$ac_status" != x0; then + echo "$bnv_err_4" >&AC_FD_CC + else + bnv_cv_qt_test_result="success" + fi + fi + fi + fi + ])dnl AC_CACHE_VAL bnv_cv_qt_test_result + AC_MSG_RESULT([$bnv_cv_qt_test_result]); + if test x"$bnv_cv_qt_test_result" = "xfailure"; then + AC_MSG_ERROR([Failed to find matching components of a complete + Qt installation. Try using more options, + see ./configure --help.]) + fi + + rm -f bnv_qt_test.h moc_bnv_qt_test.$ac_ext moc_bnv_qt_test.o \ + bnv_qt_main.$ac_ext bnv_qt_main.o bnv_qt_main + fi +]) + +dnl Internal subroutine of BNV_HAVE_QT +dnl Set bnv_qt_dir bnv_qt_include_dir bnv_qt_bin_dir bnv_qt_lib_dir bnv_qt_lib +AC_DEFUN([BNV_PATH_QT_DIRECT], +[ + ## Binary utilities ## + if test x"$with_Qt_bin_dir" != x; then + bnv_qt_bin_dir=$with_Qt_bin_dir + fi + ## Look for header files ## + if test x"$with_Qt_include_dir" != x; then + bnv_qt_include_dir="$with_Qt_include_dir" + else + # The following header file is expected to define QT_VERSION. + qt_direct_test_header=qglobal.h + # Look for the header file in a standard set of common directories. + bnv_include_path_list=" + /usr/include + `ls -dr ${QTDIR}/include 2>/dev/null` + `ls -dr /usr/include/qt* 2>/dev/null` + `ls -dr /usr/lib/qt*/include 2>/dev/null` + `ls -dr /usr/local/qt*/include 2>/dev/null` + `ls -dr /opt/qt*/include 2>/dev/null` + `ls -dr /Developer/qt*/include 2>/dev/null` + " + for bnv_dir in $bnv_include_path_list; do + if test -r "$bnv_dir/$qt_direct_test_header"; then + bnv_dirs="$bnv_dirs $bnv_dir" + fi + done + # Now look for the newest in this list + bnv_prev_ver=0 + for bnv_dir in $bnv_dirs; do + bnv_this_ver=`egrep -w '#define QT_VERSION' $bnv_dir/$qt_direct_test_header | sed s/'#define QT_VERSION'//` + if expr $bnv_this_ver '>' $bnv_prev_ver > /dev/null; then + bnv_qt_include_dir=$bnv_dir + bnv_prev_ver=$bnv_this_ver + fi + done + fi dnl Found header files. + + # Are these headers located in a traditional Trolltech installation? + # That would be $bnv_qt_include_dir stripped from its last element: + bnv_possible_qt_dir=`dirname $bnv_qt_include_dir` + if (test -x $bnv_possible_qt_dir/bin/moc) && + ((ls $bnv_possible_qt_dir/lib/libqt* > /dev/null 2>/dev/null) || + (ls $bnv_possible_qt_dir/lib64/libqt* > /dev/null 2>/dev/null)); then + # Then the rest is a piece of cake + bnv_qt_dir=$bnv_possible_qt_dir + bnv_qt_bin_dir="$bnv_qt_dir/bin" + if test x"$with_Qt_lib_dir" != x; then + bnv_qt_lib_dir="$with_Qt_lib_dir" + else + if (test -d $bnv_qt_dir/lib64); then + bnv_qt_lib_dir="$bnv_qt_dir/lib64" + else + bnv_qt_lib_dir="$bnv_qt_dir/lib" + fi + fi + # Only look for lib if the user did not supply it already + if test x"$bnv_qt_lib" = xNO; then + bnv_qt_lib="`ls $bnv_qt_lib_dir/libqt* | sed -n 1p | + sed s@$bnv_qt_lib_dir/lib@@ | [sed s@[.].*@@]`" + fi + bnv_qt_LIBS="-L$bnv_qt_lib_dir -l$bnv_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS" + else + # There is no valid definition for $QTDIR as Trolltech likes to see it + bnv_qt_dir= + ## Look for Qt library ## + if test x"$with_Qt_lib_dir" != x; then + bnv_qt_lib_dir="$with_Qt_lib_dir" + # Only look for lib if the user did not supply it already + if test x"$bnv_qt_lib" = xNO; then + bnv_qt_lib="`ls $bnv_qt_lib_dir/libqt* | sed -n 1p | + sed s@$bnv_qt_lib_dir/lib@@ | [sed s@[.].*@@]`" + fi + bnv_qt_LIBS="-L$bnv_qt_lib_dir -l$bnv_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS" + else + # Normally, when there is no traditional Trolltech installation, + # the library is installed in a place where the linker finds it + # automatically. + # If the user did not define the library name, try with qt + if test x"$bnv_qt_lib" = xNO; then + bnv_qt_lib=qt + fi + qt_direct_test_header=qapplication.h + qt_direct_test_main=" + int argc; + char ** argv; + QApplication app(argc,argv); + " + # See if we find the library without any special options. + # Don't add top $LIBS permanently yet + bnv_save_LIBS="$LIBS" + LIBS="-l$bnv_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS" + bnv_qt_LIBS="$LIBS" + bnv_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="-I$bnv_qt_include_dir" + AC_TRY_LINK([#include <$qt_direct_test_header>], + $qt_direct_test_main, + [ + # Success. + # We can link with no special library directory. + bnv_qt_lib_dir= + ], [ + # That did not work. Try the multi-threaded version + echo "Non-critical error, please neglect the above." >&AC_FD_CC + bnv_qt_lib=qt-mt + LIBS="-l$bnv_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS" + AC_TRY_LINK([#include <$qt_direct_test_header>], + $qt_direct_test_main, + [ + # Success. + # We can link with no special library directory. + bnv_qt_lib_dir= + ], [ + # That did not work. Try the OpenGL version + echo "Non-critical error, please neglect the above." >&AC_FD_CC + bnv_qt_lib=qt-gl + LIBS="-l$bnv_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS" + AC_TRY_LINK([#include <$qt_direct_test_header>], + $qt_direct_test_main, + [ + # Success. + # We can link with no special library directory. + bnv_qt_lib_dir= + ], [ + # That did not work. Maybe a library version I don't know about? + echo "Non-critical error, please neglect the above." >&AC_FD_CC + # Look for some Qt lib in a standard set of common directories. + bnv_dir_list=" + `echo $bnv_qt_includes | sed ss/includess` + /lib + /usr/lib64 + /usr/lib + /usr/local/lib64 + /usr/local/lib + /opt/lib64 + /opt/lib + `ls -dr /usr/lib64/qt* 2>/dev/null` + `ls -dr /usr/lib64/qt*/lib64 2>/dev/null` + `ls -dr /usr/lib/qt* 2>/dev/null` + `ls -dr /usr/local/qt* 2>/dev/null` + `ls -dr /opt/qt* 2>/dev/null` + " + for bnv_dir in $bnv_dir_list; do + if ls $bnv_dir/libqt* >/dev/null 2>/dev/null; then + # Gamble that it's the first one... + bnv_qt_lib="`ls $bnv_dir/libqt* | sed -n 1p | + sed s@$bnv_dir/lib@@ | sed s/[[.]].*//`" + bnv_qt_lib_dir="$bnv_dir" + break + fi + done + # Try with that one + LIBS="-l$bnv_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS" + AC_TRY_LINK([#include <$qt_direct_test_header>], + $qt_direct_test_main, + [ + # Success. + # We can link with no special library directory. + bnv_qt_lib_dir= + ], [ + # Leave bnv_qt_lib_dir defined + ]) + ]) + ]) + ]) + if test x"$bnv_qt_lib_dir" != x; then + bnv_qt_LIBS="-L$bnv_qt_lib_dir $LIBS" + else + bnv_qt_LIBS="$LIBS" + fi + LIBS="$bnv_save_LIBS" + CXXFLAGS="$bnv_save_CXXFLAGS" + fi dnl $with_Qt_lib_dir was not given + fi dnl Done setting up for non-traditional Trolltech installation +]) + # Checks for FFTW header and library. OCTAVE_CHECK_LIBRARY(fftw3, FFTW3, diff -r 4eb1247acf8f -r 8a688c3179dd gui/octave-gui.pro.in --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gui/octave-gui.pro.in Wed Oct 05 02:19:28 2011 +0200 @@ -0,0 +1,131 @@ +# OctaveGUI - A graphical user interface for Octave +# Copyright (C) 2011 Jacob Dawid (jacob.dawid@googlemail.com) +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + + +# Basic settings: +QT += core gui webkit network # Qt modules +TEMPLATE = app # Build as application +TARGET = octave-gui # Name of the target binary + +DESTDIR = bin # Destination of the output +UI_DIR = ui-files # Folder for ui files +MOC_DIR = moc-files # Folder for moc files +OBJECTS_DIR = object-files # Folder for object files + +TRANSLATIONS += languages/generic.ts \ + languages/de-de.ts \ + languages/pt-br.ts \ + languages/es-es.ts \ + languages/ru-ru.ts \ + languages/uk-ua.ts # Available translations +LIBS += -lqscintilla2 $$system(%mkoctfile% -p LIBS) $$system(%mkoctfile% -p OCTAVE_LIBS) + +mac { + CONFIG -= app_bundle +} + +# Includepaths and libraries to link against: +INCLUDEPATH += src src/terminal src/qirc src/backend \ + $$system(%mkoctfile% -p INCFLAGS) +INCFLAGS += $$system(%mkoctfile% -p INCFLAGS) +mac { + INCFLAGS += -I/opt/local-native/include +} + +LFLAGS += $$system(%mkoctfile% -p LFLAGS) \ + $$system(%mkoctfile% -p OCTAVE_LIBS) \ + $$system(%mkoctfile% -p LIBS) +mac { + LFLAGS += -L/opt/local-native/lib +} + +unix { + QMAKE_LFLAGS += -lutil +} + +win32 { + QMAKE_LFLAGS += --enable-auto-import +} + +QMAKE_LFLAGS += $$LFLAGS $$system(%mkoctfile% -p RLD_FLAG) +QMAKE_CXXFLAGS += $$INCFLAGS + +# Files associated with the project: +SOURCES +=\ + src/lexer/lexeroctavegui.cpp \ + src/MainWindow.cpp \ + src/WorkspaceView.cpp \ + src/HistoryDockWidget.cpp \ + src/FilesDockWidget.cpp \ + src/FileEditorMdiSubWindow.cpp \ + src/BrowserWidget.cpp \ + src/ImageViewerMdiSubWindow.cpp \ + src/irc/IRCWidget.cpp \ + src/SettingsDialog.cpp \ + src/OctaveGUI.cpp \ + src/ResourceManager.cpp \ + src/CommandLineParser.cpp \ + src/backend/OctaveCallbackThread.cpp \ + src/backend/OctaveLink.cpp \ + src/backend/OctaveMainThread.cpp \ + src/irc/IRCClientImpl.cpp \ + src/terminal/TerminalEmulation.cpp \ + src/backend/ReadlineAdapter.cpp \ + src/TerminalView.cpp \ + src/TerminalHighlighter.cpp \ + src/WelcomeWizard.cpp + +unix { +SOURCES +=\ + src/terminal/LinuxTerminalEmulation.cpp \ + src/terminal/KPty.cpp \ + src/terminal/KPtyDevice.cpp +} + +HEADERS += \ + src/lexer/lexeroctavegui.h \ + src/MainWindow.h \ + src/WorkspaceView.h \ + src/HistoryDockWidget.h \ + src/FilesDockWidget.h \ + src/FileEditorMdiSubWindow.h \ + src/BrowserWidget.h \ + src/ImageViewerMdiSubWindow.h \ + src/irc/IRCWidget.h \ + src/SettingsDialog.h \ + src/ResourceManager.h \ + src/CommandLineParser.h \ + src/backend/OctaveCallbackThread.h \ + src/backend/OctaveLink.h \ + src/backend/OctaveMainThread.h \ + src/irc/IRCClientInterface.h \ + src/irc/IRCClientImpl.h \ + src/terminal/TerminalEmulation.h \ + src/backend/ReadlineAdapter.h \ + src/TerminalView.h \ + src/TerminalHighlighter.h \ + src/WelcomeWizard.h + +unix { +HEADERS += \ + src/terminal/LinuxTerminalEmulation.h \ + src/terminal/KPtyDevice.h \ + src/terminal/KPty.h +} + +FORMS += \ + src/SettingsDialog.ui \ + src/WelcomeWizard.ui