Changeset - 41d0f8948f63
[Not reviewed]
default
1 8 1
Michael Guravage - 15 years ago 2010-05-03 13:45:32
michael.guravage@cwi.nl
More concise project file directives. Windows NSIS installer.
10 files changed with 163 insertions and 242 deletions:
0 comments (0 inline, 0 general)
.hgignore
Show inline comments
 
# use glob syntax.
 
syntax: glob
 

	
 
*~
 
*.a
 
*.exe
 
*.cache
 
*.Debug
 
*.o
 
*.orig
 
*.out
 
*.Release
src/VirtualLeaf-install.nsi
Show inline comments
 
new file 100644
 
# $Id$
 

	
 
# appends \ to the path if missing
 
# example: !insertmacro GetCleanDir "c:\blabla"
 
# Pop $0 => "c:\blabla\"
 
!macro GetCleanDir INPUTDIR
 
  ; ATTENTION: USE ON YOUR OWN RISK!
 
  ; Please report bugs here: http://stefan.bertels.org/
 
  !define Index_GetCleanDir 'GetCleanDir_Line${__LINE__}'
 
  Push $R0
 
  Push $R1
 
  StrCpy $R0 "${INPUTDIR}"
 
  StrCmp $R0 "" ${Index_GetCleanDir}-finish
 
  StrCpy $R1 "$R0" "" -1
 
  StrCmp "$R1" "\" ${Index_GetCleanDir}-finish
 
  StrCpy $R0 "$R0\"
 
${Index_GetCleanDir}-finish:
 
  Pop $R1
 
  Exch $R0
 
  !undef Index_GetCleanDir
 
!macroend
 
 
 
# similar to "RMDIR /r DIRECTORY", but does not remove DIRECTORY itself
 
# example: !insertmacro RemoveFilesAndSubDirs "$INSTDIR"
 
!macro RemoveFilesAndSubDirs DIRECTORY
 
  # ATTENTION: USE ON YOUR OWN RISK!
 
  # Please report bugs here: http://stefan.bertels.org/
 
  !define Index_RemoveFilesAndSubDirs 'RemoveFilesAndSubDirs_${__LINE__}'
 
 
 
  Push $R0
 
  Push $R1
 
  Push $R2
 
 
 
  !insertmacro GetCleanDir "${DIRECTORY}"
 
  Pop $R2
 
  FindFirst $R0 $R1 "$R2*.*"
 
${Index_RemoveFilesAndSubDirs}-loop:
 
  StrCmp $R1 "" ${Index_RemoveFilesAndSubDirs}-done
 
  StrCmp $R1 "." ${Index_RemoveFilesAndSubDirs}-next
 
  StrCmp $R1 ".." ${Index_RemoveFilesAndSubDirs}-next
 
  IfFileExists "$R2$R1\*.*" ${Index_RemoveFilesAndSubDirs}-directory
 
  ; file
 
  Delete "$R2$R1"
 
  goto ${Index_RemoveFilesAndSubDirs}-next
 
${Index_RemoveFilesAndSubDirs}-directory:
 
  ; directory
 
  RMDir /r "$R2$R1"
 
${Index_RemoveFilesAndSubDirs}-next:
 
  FindNext $R0 $R1
 
  Goto ${Index_RemoveFilesAndSubDirs}-loop
 
${Index_RemoveFilesAndSubDirs}-done:
 
  FindClose $R0
 
 
 
  Pop $R2
 
  Pop $R1
 
  Pop $R0
 
  !undef Index_RemoveFilesAndSubDirs
 
!macroend
 

	
 
# set the name of the installer
 
outfile "VirtualLeaf-install.exe"
 
 
 
# define the directory to install to
 
installDir C:\VirtualLeaf
 

	
 
# Request application privileges
 
RequestExecutionLevel user
 

	
 
# Pages
 
Page directory
 
Page instfiles
 

	
 
# default section
 
section
 
 
 
  # define the output path for the Virtual Leaf executable
 
  setOutPath $INSTDIR
 
  file ..\bin\VirtualLeaf.exe
 
 
 
  # define the output path for the Virtual Leaf models
 
  setOutPath $INSTDIR\models
 
  file ..\bin\models\*
 

	
 
  # define uninstaller name
 
  writeUninstaller $INSTDIR\uninstaller.exe
 
 
 
# default section end
 
sectionEnd
 
 
 
# create a section to define what the uninstaller does.
 
# the section will always be named "Uninstall"
 
section "Uninstall"
 
 
 
  # Always delete uninstaller first
 
  delete $INSTDIR\uninstaller.exe
 
 
 
  # now delete installed file
 
  !insertmacro RemoveFilesAndSubDirs "$INSTDIR"
 

	
 
sectionEnd
 
# finis
src/VirtualLeaf.pro
Show inline comments
 
@@ -16,25 +16,33 @@
 
#  You should have received a copy of the GNU General Public License
 
#  along with the Virtual Leaf.  If not, see <http://www.gnu.org/licenses/>.
 
#
 
#  Copyright 2010 Roeland Merks.
 
#
 

	
 
CONFIG -= release
 
CONFIG += debug
 
CONFIG += qt
 

	
 
QMAKE_CXXFLAGS += -fexceptions
 
QMAKE_CXXFLAGS_DEBUG += -g3
 
QMAKE_CXXFLAGS_DEBUG -= -DQDEBUG
 

	
 
#REACTIONS = reactions_auxin_growth.h 
 
#REACTIONS = reactions_meinhardt.h
 
#REACTIONS = reactions_pce_growth.h
 
DEFINES += QTGRAPHICS
 
DEFINES += REACTIONS_HEADER=$${REACTIONS}
 
DEFINES += REACTIONS_HEADER_STRING=\"$${REACTIONS}\"
 
DEFINES += FLEMING
 

	
 
CONFIG += qt release
 
PERLDIR = ./perl
 
BINDIR = ../bin
 
DESTDIR = $$BINDIR
 
TARGET = VirtualLeaf
 
TEMPLATE = app
 
PARTMPL = $${TARGET}par.tmpl
 
MAINSRC = $${TARGET}.cpp
 
QT -= network sql xml
 
QT += qt3support
 

	
 
!win32 {
 
@@ -42,18 +50,18 @@ QT += qt3support
 
}
 

	
 
win32 {
 
 CONFIG += console
 
 LIBXML2DIR = C:\libxml2
 
 LIBICONVDIR = C:\libiconv
 
 LIBZDIR = C:\libz
 
 system(DEL parameter.cpp parameter.h) 
 
 GRAPHICS = qt 
 
 RC_FILE = VirtualLeaf.rc
 
 QMAKE_CXXFLAGS += -DLIBXML_STATIC
 
 QMAKE_CXXFLAGS += -fexceptions -I$${LIBXML2DIR}\include -I$${LIBICONVDIR}\include
 
 QMAKE_CXXFLAGS_DEBUG += -DQDEBUG -ggdb3 -O0
 
 QMAKE_CXXFLAGS += -I$${LIBXML2DIR}\include -I$${LIBICONVDIR}\include -I$${LIBZDIR}\include
 
 QMAKE_POST_LINK = "\
 
  C:\Bin\cp release\VirtualLeaf.exe \
 
  C:\Qt\4.5.3\bin\Qt3Support4.dll \
 
  C:\Qt\4.5.3\bin\QtGui4.dll \
 
  C:\Qt\4.5.3\bin\QtSql4.dll \
 
  C:\Qt\4.5.3\bin\QtXml4.dll \
 
@@ -62,13 +70,13 @@ win32 {
 
  C:\Qt\4.5.3\bin\QtSvg4.dll \
 
  C:\bin\iconv.dll \
 
  C:\bin\libxml2.dll \
 
  C:\bin\zlib1.dll \
 
  C:\MinGW\bin\mingwm10.dll \
 
  $${DESTDIR}"
 
 LIBS += -L$${LIBXML2DIR}\lib -lxml2 -L$${LIBICONVDIR}\lib  -lz -lm -lwsock32 -liconv
 
 LIBS += -L$${LIBXML2DIR}\lib -lxml2 -L$${LIBICONVDIR}\lib -L$${LIBZDIR}\lib  -lz -lm -lwsock32 -liconv
 
}
 

	
 
# Application icons
 
macx {
 
 ICON = leaficon.icns
 
 # make sure that the executable can find the libqwt share library
 
@@ -86,14 +94,13 @@ macx:release {
 

	
 
unix {
 
 system(rm -f parameter.cpp parameter.h) 
 
 CC = /usr/bin/gcc 
 
 QWTDIR = /ufs/guravage/opt/qwt-5.2.1-svn
 
 QMAKE_LIBDIR += $$QWTDIR/lib 
 
 QMAKE_CXXFLAGS += -fexceptions -I/usr/include/libxml2
 
 QMAKE_CXXFLAGS_DEBUG += -DQDEBUG -ggdb3 -O0
 
 QMAKE_CXXFLAGS += -I/usr/include/libxml2
 
 QMAKE_LFLAGS += -fPIC
 
 LIBS += -lxml2 -lz -lm 
 
}
 

	
 
system(perl $$PERLDIR/make_parameter_source.pl $$PARTMPL)
 
system(perl $$PERLDIR/make_pardialog_source.pl $$PARTMPL)
src/VirtualLeaf_d.pro
Show inline comments
 
deleted file
src/build_models/plugin_auxingrowth.pro
Show inline comments
 
@@ -16,32 +16,37 @@
 
#  You should have received a copy of the GNU General Public License
 
#  along with the Virtual Leaf.  If not, see <http://www.gnu.org/licenses/>.
 
#
 
#  Copyright 2010 Roeland Merks.
 
#
 

	
 
CONFIG -= release
 
CONFIG += debug
 
CONFIG += plugin
 

	
 
BINDIR = ../../bin
 
CONFIG += plugin release
 
DEFINES = QTGRAPHICS # VLEAFPLUGIN
 
DESTDIR = $${BINDIR}/models
 
TARGET = auxingrowth
 
HEADERS = ../simplugin.h $${TARGET}plugin.h  
 
QMAKE_CXXFLAGS += -I..
 
QMAKE_CXXFLAGS += -fexceptions -I..
 
QMAKE_CXXFLAGS_DEBUG += -g3
 
QT += qt3support
 
SOURCES = $${TARGET}plugin.cpp
 
TEMPLATE = lib 
 

	
 
unix {
 
 LIBS += -Llib -lvleaf
 
 QMAKE_CXXFLAGS += -fexceptions -I/usr/include/libxml2
 
 QMAKE_CXXFLAGS += -I/usr/include/libxml2
 
 QMAKE_LFLAGS += -fPIC
 
}
 

	
 
win32 {
 
 LIBXML2DIR = C:\libxml2
 
 LIBICONVDIR = C:\libiconv
 
 LIBZDIR = C:\libz
 
 LIBS += -Llib -lvleaf
 
 QMAKE_CXXFLAGS += -DLIBXML_STATIC
 
 QMAKE_CXXFLAGS += -fexceptions -I$${LIBXML2DIR}\include  -I$${LIBICONVDIR}\include
 
 QMAKE_CXXFLAGS += -I$${LIBXML2DIR}\include -I$${LIBICONVDIR}\include -I$${LIBZDIR}\include
 
}
 

	
 
# finis
src/build_models/plugin_leaf.pro
Show inline comments
 
@@ -16,32 +16,37 @@
 
#  You should have received a copy of the GNU General Public License
 
#  along with the Virtual Leaf.  If not, see <http://www.gnu.org/licenses/>.
 
#
 
#  Copyright 2010 Roeland Merks.
 
#
 

	
 
CONFIG -= release
 
CONFIG += debug
 
CONFIG += plugin
 

	
 
BINDIR = ../../bin
 
CONFIG += plugin release
 
DEFINES = QTGRAPHICS # VLEAFPLUGIN
 
DESTDIR = $${BINDIR}/models
 
TARGET = leaf
 
HEADERS = ../simplugin.h $${TARGET}plugin.h  
 
QMAKE_CXXFLAGS += -I..
 
QMAKE_CXXFLAGS += -fexceptions -I..
 
QMAKE_CXXFLAGS_DEBUG += -g3
 
QT += qt3support
 
SOURCES = $${TARGET}plugin.cpp
 
TEMPLATE = lib 
 

	
 
unix {
 
 LIBS += -Llib -lvleaf
 
 QMAKE_CXXFLAGS += -fexceptions -fPIC -I/usr/include/libxml2
 
 QMAKE_CXXFLAGS += -fPIC -I/usr/include/libxml2
 
 QMAKE_LFLAGS += -fPIC
 
}
 

	
 
win32 {
 
 LIBXML2DIR = C:\libxml2
 
 LIBICONVDIR = C:\libiconv
 
 LIBZDIR = C:\libz
 
 LIBS += -Llib -lvleaf
 
 QMAKE_CXXFLAGS += -DLIBXML_STATIC
 
 QMAKE_CXXFLAGS += -fexceptions -I$${LIBXML2DIR}\include  -I$${LIBICONVDIR}\include
 
 QMAKE_CXXFLAGS += -I$${LIBXML2DIR}\include -I$${LIBICONVDIR}\include -I$${LIBZDIR}\include
 
}
 

	
 
# finis
src/build_models/plugin_meinhardt.pro
Show inline comments
 
@@ -16,33 +16,38 @@
 
#  You should have received a copy of the GNU General Public License
 
#  along with the Virtual Leaf.  If not, see <http://www.gnu.org/licenses/>.
 
#
 
#  Copyright 2010 Roeland Merks.
 
#
 

	
 
CONFIG -= release
 
CONFIG += debug
 
CONFIG += plugin
 

	
 
BINDIR = ../../bin
 
CONFIG += plugin release
 
DEFINES = QTGRAPHICS # VLEAFPLUGIN
 
DESTDIR = $${BINDIR}/models
 
TARGET = meinhardt
 
HEADERS = simplugin.h $${TARGET}plugin.h  
 
QMAKE_CXXFLAGS += -I..
 
QMAKE_CXXFLAGS += -fexceptions -I..
 
QMAKE_CXXFLAGS_DEBUG += -g3
 
QT += qt3support
 
SOURCES = $${TARGET}plugin.cpp
 
TEMPLATE = lib 
 

	
 
unix {
 
 LIBS += -Llib -lvleaf
 
 QMAKE_CXXFLAGS += -fexceptions -I/usr/include/libxml2
 
 QMAKE_CXXFLAGS += -I/usr/include/libxml2
 
 QMAKE_LFLAGS += -fPIC
 
}
 

	
 
win32 {
 
 LIBXML2DIR = C:\libxml2
 
 LIBICONVDIR = C:\libiconv
 
 LIBZDIR = C:\libz
 
 LIBS += -Llib -lvleaf
 
 QMAKE_CXXFLAGS += -DLIBXML_STATIC
 
 QMAKE_CXXFLAGS += -fexceptions -I$${LIBXML2DIR}\include  -I$${LIBICONVDIR}\include
 
 QMAKE_CXXFLAGS += -I$${LIBXML2DIR}\include -I$${LIBICONVDIR}\include -I$${LIBZDIR}\include
 
}
 

	
 
# finis
 

	
src/build_models/plugin_test.pro
Show inline comments
 
@@ -17,33 +17,38 @@
 
#  along with the Virtual Leaf.  If not, see <http://www.gnu.org/licenses/>.
 
#
 
#  Copyright 2010 Roeland Merks.
 
#
 

	
 

	
 
CONFIG -= release
 
CONFIG += debug
 
CONFIG += plugin
 

	
 
BINDIR = ../../bin
 
CONFIG += plugin debug #release
 
DEFINES = QTGRAPHICS # VLEAFPLUGIN
 
DESTDIR = $${BINDIR}/models
 
TARGET = test
 
HEADERS = ../simplugin.h $${TARGET}plugin.h  
 
QMAKE_CXXFLAGS += -I..
 
QMAKE_CXXFLAGS += -fexceptions -I..
 
QMAKE_CXXFLAGS_DEBUG += -g3
 
QT += qt3support
 
SOURCES = $${TARGET}plugin.cpp
 
TEMPLATE = lib 
 

	
 
unix {
 
 LIBS += -Llib -lvleaf
 
 QMAKE_CXXFLAGS += -fexceptions -I/usr/include/libxml2
 
 QMAKE_CXXFLAGS += -I/usr/include/libxml2
 
 QMAKE_LFLAGS += -fPIC
 
}
 

	
 
win32 {
 
 LIBXML2DIR = C:\libxml2
 
 LIBICONVDIR = C:\libiconv
 
 LIBZDIR = C:\libz
 
 LIBS += -Llib -lvleaf
 
 QMAKE_CXXFLAGS += -DLIBXML_STATIC
 
 QMAKE_CXXFLAGS += -fexceptions -I$${LIBXML2DIR}\include  -I$${LIBICONVDIR}\include
 
 QMAKE_CXXFLAGS += -I$${LIBXML2DIR}\include -I$${LIBICONVDIR}\include -I$${LIBZDIR}\include
 

	
 
}
 

	
 
# finis
src/cellbase.h
Show inline comments
 
@@ -131,13 +131,13 @@ class CellBase :  public QObject, public
 
    inline const char *BoundaryStr(void) { return boundary_type_names[boundary]; }
 
    
 
    ostream &print(ostream &os) const;
 

	
 
    inline double Chemical(int c) const { // returns the value of chemical c
 
    #ifdef QDEBUG
 
      qDebug() << endl << "Entering cellbase::chemical(" << c << ")" << endl;
 
      qDebug() << endl << "Entering cellbase::chemical(" << c << "), and nchem is: " << NChem() << "." << endl;
 
    #endif
 

	
 
      int nchem = NChem();
 

	
 
      #ifdef _undefined_
 
      if ((c<0) || (c>=nchem))
src/libplugin.pro
Show inline comments
 
@@ -16,13 +16,20 @@
 
#  You should have received a copy of the GNU General Public License
 
#  along with the Virtual Leaf.  If not, see <http://www.gnu.org/licenses/>.
 
#
 
#  Copyright 2010 Roeland Merks.
 
#
 

	
 
CONFIG += staticlib debug #release
 
CONFIG -= release
 
CONFIG += debug
 
CONFIG += staticlib
 

	
 
QMAKE_CXXFLAGS += -fexceptions
 
QMAKE_CXXFLAGS_DEBUG += -g3
 
QMAKE_CXXFLAGS_DEBUG -= -DQDEBUG
 

	
 
DEFINES = QTGRAPHICS # VLEAFPLUGIN
 
DESTDIR = build_models/lib 
 
PERLDIR = ./perl
 
PARTMPL = VirtualLeafpar.tmpl
 
QT += qt3support
 
TARGET = vleaf
 
@@ -53,23 +60,24 @@ SOURCES = \
 
 vector.cpp \
 
 wallbase.cpp \
 
 warning.cpp
 

	
 
unix {
 
 system(rm -f parameter.cpp parameter.h) # this is performed here when qmake is envoked and not in the resulting makefile.
 
 QMAKE_CXXFLAGS += -fexceptions -fPIC -I/usr/include/libxml2
 
 QMAKE_CXXFLAGS += -fPIC -I/usr/include/libxml2
 
 QMAKE_LFLAGS += -fPIC
 
 LIBS += -lxml2 -lz -lm 
 
}
 

	
 
win32 {
 
 system(DEL parameter.cpp parameter.h) 
 
 LIBXML2DIR = C:\libxml2
 
 LIBICONVDIR = C:\libiconv
 
 LIBZDIR = C:\libz
 
 QMAKE_CXXFLAGS += -DLIBXML_STATIC
 
 QMAKE_CXXFLAGS += -fexceptions -I$${LIBXML2DIR}\include -I$${LIBICONVDIR}\include
 
 QMAKE_CXXFLAGS += -I$${LIBXML2DIR}\include -I$${LIBICONVDIR}\include -I$${LIBZDIR}\include
 
}
 

	
 
system(perl $$PERLDIR/make_parameter_source.pl $$PARTMPL)
 
system(perl $$PERLDIR/make_pardialog_source.pl $$PARTMPL)
 
#system(perl $$PERLDIR/make_xmlwritecode.pl -h $$REACTIONS)
 
#
0 comments (0 inline, 0 general)