From c7c300d3c079bb294d9c6406c5521fced89d3b72 Mon Sep 17 00:00:00 2001 From: Oliver Bock <oliver.bock@aei.mpg.de> Date: Tue, 20 May 2008 00:56:05 +0200 Subject: [PATCH] More setup script updates * Using bash explicitly (e.g. for "type" built-in) * Implemented prerequisite check for executables (GL/GLU should also be checked!) * Added first parts of error handling harness * Also: removed KDevelop files of kscreensaver --- setup.sh | 113 +++++++++--- src/keinsteinsaver/keinsteinsaver.kdevelop | 169 ------------------ .../keinsteinsaver.kdevelop.pcs | Bin 10368 -> 0 bytes src/keinsteinsaver/keinsteinsaver.kdevses | 28 --- 4 files changed, 86 insertions(+), 224 deletions(-) delete mode 100644 src/keinsteinsaver/keinsteinsaver.kdevelop delete mode 100644 src/keinsteinsaver/keinsteinsaver.kdevelop.pcs delete mode 100644 src/keinsteinsaver/keinsteinsaver.kdevses diff --git a/setup.sh b/setup.sh index 80e1df9..2a51633 100755 --- a/setup.sh +++ b/setup.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash ########################################################################### # Copyright (C) 2008 by Oliver Bock # @@ -29,17 +29,19 @@ check_prerequisites() { - echo "Not yet implemented: check_prerequisites()" - # automake - # autoconf - # cmake - # wget - # C compiler - # libtool - # ar - # lex or flex - # yacc or bison or byacc - # m4 + echo "Checking prerequisites..." + + # required toolchain + TOOLS="automake autoconf m4 cmake wget gcc g++ ld libtool ar lex yacc" + + for tool in $TOOLS; do + if ! ( type $tool >/dev/null 2>&1 ); then + echo "Error! Missing \"$tool\" which is a required tool! Stopping..." + return 1 + fi + done + + return 0 } @@ -105,6 +107,8 @@ prepare_generic() echo "Retrieving BOINC (this may take a while)..." | tee -a $ROOT/setup.log svn checkout http://boinc.berkeley.edu/svn/trunk/boinc . >> $ROOT/setup.log fi + + return 0 } @@ -130,6 +134,8 @@ prepare_win32() # note: svn has no force/overwrite switch. the file might not be updated when patched patch x86-mingw32-build.sh.conf < $ROOT/patches/x86-mingw32-build.sh.conf.patch >> $ROOT/setup.log chmod +x x86-mingw32-build.sh >> $ROOT/setup.log + + return 0 } @@ -176,13 +182,19 @@ build_generic() make >> $ROOT/setup.log make install >> $ROOT/setup.log echo "Successfully built and installed BOINC!" | tee -a $ROOT/setup.log + + return 0 } + build_mingw() { echo "Not yet implemented: build_mingw()" + + return 0 } + build_starsphere() { echo "Building Starsphere [ORC] (this may take a while)..." | tee -a $ROOT/setup.log @@ -212,27 +224,40 @@ build_starsphere() make >> $ROOT/setup.log make install >> $ROOT/setup.log echo "Successfully built and installed Starsphere [Application]!" | tee -a $ROOT/setup.log + + return 0 } + build_linux() { build_generic build_starsphere + + return 0 } build_mac() { - build_generic - build_starsphere + echo "Not yet implemented: build_mac()" + +# build_generic +# build_starsphere + + return 0 } build_win32() { - build_mingw - build_generic - build_starsphere + echo "Not yet implemented: build_win32()" + +# build_mingw +# build_generic +# build_starsphere + + return 0 } @@ -246,8 +271,11 @@ check_last_build() fi echo "$1" > .lastbuild + + return 0 } + print_usage() { cd $ROOT @@ -262,6 +290,8 @@ print_usage() echo "*************************" echo "Wrong usage. Stopping!" >> $ROOT/setup.log + + return 0 } @@ -299,23 +329,52 @@ case "$1" in echo "Building mac version:" | tee -a $ROOT/setup.log ;; "--win32") - TARGET=$TARGET_WIN32 - check_last_build "$1" - echo "Building win32 version:" | tee -a $ROOT/setup.log - ;; + TARGET=$TARGET_WIN32 + check_last_build "$1" + echo "Building win32 version:" | tee -a $ROOT/setup.log + ;; *) - print_usage - exit 1 - ;; + print_usage + exit 1 + ;; esac # here we go... check_prerequisites -prepare_generic +if [ ! $? -eq 0 ]; then + exit 1 +fi -if [ TARGET=$TARGET_LINUX ]; then - build_linux +prepare_generic +if [ ! $? -eq 0 ]; then + exit 1 fi +case $TARGET in + $TARGET_LINUX) + build_linux + if [ ! $? -eq 0 ]; then + exit 1 + fi + ;; + $TARGET_MAC) + build_mac + if [ ! $? -eq 0 ]; then + exit 1 + fi + ;; + $TARGET_WIN32) + build_win32 + if [ ! $? -eq 0 ]; then + exit 1 + fi + ;; + *) + # should be unreachable + print_usage + exit 1 + ;; +esac + exit 0 diff --git a/src/keinsteinsaver/keinsteinsaver.kdevelop b/src/keinsteinsaver/keinsteinsaver.kdevelop deleted file mode 100644 index dbbc19b..0000000 --- a/src/keinsteinsaver/keinsteinsaver.kdevelop +++ /dev/null @@ -1,169 +0,0 @@ -<?xml version = '1.0'?> -<kdevelop> - <general> - <author>Oliver Bock</author> - <email>oliver.bock@aei.mpg.de</email> - <version>0.1</version> - <projectmanagement>KDevKDEAutoProject</projectmanagement> - <primarylanguage>C++</primarylanguage> - <keywords> - <keyword>C++</keyword> - <keyword>Code</keyword> - <keyword>Qt</keyword> - <keyword>KDE</keyword> - <keyword>kioslave</keyword> - </keywords> - <ignoreparts/> - <projectname>keinsteinsaver</projectname> - </general> - <kdevcppsupport> - <qt> - <version>3</version> - <used>true</used> - <includestyle>3</includestyle> - <designerintegration>EmbeddedKDevDesigner</designerintegration> - <root>/usr/share/qt3</root> - <qmake>/usr/bin/qmake-qt3</qmake> - <designer>/usr/bin/designer-qt3</designer> - <designerpluginpaths/> - </qt> - <references> - <pcs>Qt4</pcs> - </references> - <codecompletion> - <automaticCodeCompletion>false</automaticCodeCompletion> - <automaticArgumentsHint>true</automaticArgumentsHint> - <automaticHeaderCompletion>true</automaticHeaderCompletion> - <codeCompletionDelay>250</codeCompletionDelay> - <argumentsHintDelay>400</argumentsHintDelay> - <headerCompletionDelay>250</headerCompletionDelay> - <showOnlyAccessibleItems>false</showOnlyAccessibleItems> - <completionBoxItemOrder>0</completionBoxItemOrder> - <howEvaluationContextMenu>true</howEvaluationContextMenu> - <showCommentWithArgumentHint>true</showCommentWithArgumentHint> - <statusBarTypeEvaluation>false</statusBarTypeEvaluation> - <namespaceAliases>std=_GLIBCXX_STD;__gnu_cxx=std</namespaceAliases> - <processPrimaryTypes>true</processPrimaryTypes> - <processFunctionArguments>false</processFunctionArguments> - <preProcessAllHeaders>false</preProcessAllHeaders> - <parseMissingHeadersExperimental>false</parseMissingHeadersExperimental> - <resolveIncludePathsUsingMakeExperimental>false</resolveIncludePathsUsingMakeExperimental> - <alwaysParseInBackground>true</alwaysParseInBackground> - <usePermanentCaching>true</usePermanentCaching> - <alwaysIncludeNamespaces>false</alwaysIncludeNamespaces> - <includePaths>.;</includePaths> - </codecompletion> - </kdevcppsupport> - <kdevautoproject> - <general> - <activetarget>src/libkeinsteinsaver.la</activetarget> - <useconfiguration>debug</useconfiguration> - </general> - <configurations> - <optimized> - <builddir>optimized</builddir> - <ccompiler>kdevgccoptions</ccompiler> - <cxxcompiler>kdevgppoptions</cxxcompiler> - <f77compiler>kdevg77options</f77compiler> - <cxxflags>-O2 -g0</cxxflags> - </optimized> - <debug> - <configargs>--enable-debug=full</configargs> - <builddir>debug</builddir> - <ccompiler>kdevgccoptions</ccompiler> - <cxxcompiler>kdevgppoptions</cxxcompiler> - <f77compiler>kdevg77options</f77compiler> - <cxxflags>-O0 -g3</cxxflags> - </debug> - </configurations> - <make> - <envvars> - <envvar value="1" name="WANT_AUTOCONF_2_5" /> - <envvar value="1" name="WANT_AUTOMAKE_1_6" /> - </envvars> - </make> - </kdevautoproject> - <kdevfileview> - <groups> - <group pattern="*.cpp;*.cxx;*.h" name="Sources" /> - <group pattern="*.po;*.ts" name="Translations" /> - <group pattern="*" name="Others" /> - <hidenonprojectfiles>false</hidenonprojectfiles> - <hidenonlocation>false</hidenonlocation> - </groups> - <tree> - <hidepatterns>*.o,*.lo,CVS</hidepatterns> - <hidenonprojectfiles>false</hidenonprojectfiles> - </tree> - </kdevfileview> - <kdevdoctreeview> - <ignoretocs> - <toc>ada</toc> - <toc>ada_bugs_gcc</toc> - <toc>bash</toc> - <toc>bash_bugs</toc> - <toc>clanlib</toc> - <toc>fortran_bugs_gcc</toc> - <toc>gnome1</toc> - <toc>gnustep</toc> - <toc>gtk</toc> - <toc>gtk_bugs</toc> - <toc>haskell</toc> - <toc>haskell_bugs_ghc</toc> - <toc>java_bugs_gcc</toc> - <toc>java_bugs_sun</toc> - <toc>opengl</toc> - <toc>pascal_bugs_fp</toc> - <toc>php</toc> - <toc>php_bugs</toc> - <toc>perl</toc> - <toc>perl_bugs</toc> - <toc>python</toc> - <toc>python_bugs</toc> - <toc>ruby</toc> - <toc>ruby_bugs</toc> - <toc>sdl</toc> - <toc>stl</toc> - <toc>sw</toc> - <toc>w3c-dom-level2-html</toc> - <toc>w3c-svg</toc> - <toc>w3c-uaag10</toc> - <toc>wxwidgets_bugs</toc> - </ignoretocs> - <ignoreqt_xml> - <toc>qmake User Guide</toc> - </ignoreqt_xml> - </kdevdoctreeview> - <kdevdebugger> - <general> - <dbgshell>libtool</dbgshell> - </general> - </kdevdebugger> - <kdevfilecreate> - <filetypes/> - <useglobaltypes> - <type ext="ui" /> - <type ext="cpp" /> - <type ext="h" /> - </useglobaltypes> - </kdevfilecreate> - <kdevdocumentation> - <projectdoc> - <docsystem>Doxygen Documentation Collection</docsystem> - <docurl>keinsteinsaver.tag</docurl> - </projectdoc> - </kdevdocumentation> - <substmap> - <APPNAME>keinsteinsaver</APPNAME> - <APPNAMELC>keinsteinsaver</APPNAMELC> - <APPNAMESC>Keinsteinsaver</APPNAMESC> - <APPNAMEUC>KEINSTEINSAVER</APPNAMEUC> - <AUTHOR>Oliver Bock</AUTHOR> - <EMAIL>oliver.bock@aei.mpg.de</EMAIL> - <LICENSE>GPL</LICENSE> - <LICENSEFILE>COPYING</LICENSEFILE> - <VERSION>0.1</VERSION> - <YEAR>2008</YEAR> - <dest>/home/oliver/development/aei/lscsoft/src/einsteinathome/graphics/src/keinsteinsaver</dest> - </substmap> -</kdevelop> diff --git a/src/keinsteinsaver/keinsteinsaver.kdevelop.pcs b/src/keinsteinsaver/keinsteinsaver.kdevelop.pcs deleted file mode 100644 index 6c29e7e2e2065803f490f6af2788a8fa6ffbac4a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10368 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 J1F0ek0{}Xz2#Ejy diff --git a/src/keinsteinsaver/keinsteinsaver.kdevses b/src/keinsteinsaver/keinsteinsaver.kdevses deleted file mode 100644 index b24f55d..0000000 --- a/src/keinsteinsaver/keinsteinsaver.kdevses +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE KDevPrjSession> -<KDevPrjSession> - <DocsAndViews NumberOfDocuments="1" > - <Doc0 NumberOfViews="1" URL="file:///home/oliver/development/aei/lscsoft/src/einsteinathome/graphics/src/keinsteinsaver/src/keinsteinsaver.cpp" > - <View0 Encoding="" line="0" Type="Source" /> - </Doc0> - </DocsAndViews> - <pluginList> - <kdevdebugger> - <breakpointList/> - <showInternalCommands value="0" /> - </kdevdebugger> - <kdevastyle> - <Extensions ext="*.cpp *.h,*.c *.h,*.cxx *.hxx,*.c++ *.h++,*.cc *.hh,*.C *.H,*.diff,*.inl,*.java,*.moc,*.patch,*.tlh,*.xpm" /> - <AStyle IndentPreprocessors="0" FillCount="4" PadParenthesesOut="0" IndentNamespaces="0" IndentLabels="0" Fill="Tabs" MaxStatement="40" Brackets="Linux" MinConditional="-1" IndentBrackets="0" PadParenthesesUn="1" BlockBreak="1" KeepStatements="0" KeepBlocks="0" BlockIfElse="1" IndentSwitches="0" PadOperators="1" FStyle="UserDefined" IndentCases="0" FillEmptyLines="0" BracketsCloseHeaders="1" BlockBreakAll="0" PadParenthesesIn="0" IndentClasses="0" IndentBlocks="0" FillForce="1" /> - </kdevastyle> - <kdevbookmarks> - <bookmarks/> - </kdevbookmarks> - <kdevvalgrind> - <executable path="" params="" /> - <valgrind path="" params="" /> - <calltree path="" params="" /> - <kcachegrind path="" /> - </kdevvalgrind> - </pluginList> -</KDevPrjSession> -- GitLab