diff options
| -rw-r--r-- | 3rdParty/Boost/SConscript | 5 | ||||
| -rw-r--r-- | 3rdParty/LibIDN/SConscript | 3 | ||||
| -rw-r--r-- | BuildTools/SCons/Tools/.gitignore (renamed from site_scons/site_tools/.gitignore) | 0 | ||||
| -rw-r--r-- | BuildTools/SCons/Tools/qt4.py (renamed from site_scons/site_tools/qt4.py) | 0 | ||||
| -rw-r--r-- | QA/SConscript | 1 | ||||
| -rw-r--r-- | SConstruct | 142 | ||||
| -rw-r--r-- | Swift/QtUI/QtSystemTray.cpp | 2 | ||||
| -rw-r--r-- | Swift/QtUI/Roster/QtTreeWidgetItem.cpp | 2 | ||||
| -rw-r--r-- | Swift/QtUI/Roster/RosterDelegate.h | 2 | ||||
| -rw-r--r-- | Swift/QtUI/Roster/RosterModel.cpp | 2 | ||||
| -rw-r--r-- | Swift/QtUI/Roster/RosterModel.h | 2 | ||||
| -rw-r--r-- | Swift/QtUI/SConscript | 4 | 
12 files changed, 123 insertions, 42 deletions
| diff --git a/3rdParty/Boost/SConscript b/3rdParty/Boost/SConscript index d75ac29..769a67d 100644 --- a/3rdParty/Boost/SConscript +++ b/3rdParty/Boost/SConscript @@ -8,6 +8,9 @@ env["BOOST_FLAGS"] = {  		"LIBS": ["Boost"]  	} +myenv = env.Clone() +myenv.Replace(CCFLAGS = [flag for flag in env["CCFLAGS"] if flag not in ["-W", "-Wall"]]) +  sources = [  		"libs/date_time/src/gregorian/date_generators.cpp",  		"libs/date_time/src/gregorian/greg_month.cpp", @@ -60,4 +63,4 @@ else :  	if env["PLATFORM"] == "cygwin" :  		env["BOOST_FLAGS"]["CPPDEFINES"] += ["__USE_W32_SOCKETS"] -env.StaticLibrary("Boost", sources, CPPFLAGS = "-I" + Dir(".").abspath, CPPDEFINES = cppdefines) +myenv.StaticLibrary("Boost", sources, CPPFLAGS = "-I" + Dir(".").abspath, CPPDEFINES = cppdefines) diff --git a/3rdParty/LibIDN/SConscript b/3rdParty/LibIDN/SConscript index 7e134dd..9e408ff 100644 --- a/3rdParty/LibIDN/SConscript +++ b/3rdParty/LibIDN/SConscript @@ -9,6 +9,9 @@ env["LIBIDN_FLAGS"] = {  myenv = env.Clone() +# Remove warn flags +myenv.Replace(CCFLAGS = [flag for flag in env["CCFLAGS"] if flag not in ["-W", "-Wall"]]) +  # Check for strcasecmp() or replacement  conf = Configure(myenv)  if not conf.CheckFunc('strcasecmp') : diff --git a/site_scons/site_tools/.gitignore b/BuildTools/SCons/Tools/.gitignore index 0d20b64..0d20b64 100644 --- a/site_scons/site_tools/.gitignore +++ b/BuildTools/SCons/Tools/.gitignore diff --git a/site_scons/site_tools/qt4.py b/BuildTools/SCons/Tools/qt4.py index 6df945b..6df945b 100644 --- a/site_scons/site_tools/qt4.py +++ b/BuildTools/SCons/Tools/qt4.py diff --git a/QA/SConscript b/QA/SConscript new file mode 100644 index 0000000..32aece4 --- /dev/null +++ b/QA/SConscript @@ -0,0 +1 @@ +SConscript("UnitTest/SConscript") @@ -1,44 +1,84 @@ -import sys +import sys, os -# Default build environment -env = Environment(CPPPATH = "#") -env.Dump() +################################################################################ +# Set up default build environment +################################################################################ + +env = Environment(CPPPATH = "#", ENV = {'PATH' : os.environ['PATH']}) +# Pretty output  if ARGUMENTS.get("V") != "1": -	if sys.stdout.isatty() and env["PLATFORM"] != "win32": -		env["CCCOMSTR"]             = "  \033[0;33;140mCC\033[0m     $TARGET" -		env["CXXCOMSTR"]            = "  \033[0;32;140mCXX\033[0m    $TARGET" -		env["LINKCOMSTR"]           = "  \033[0;31;140mLINK\033[0m   $TARGET" -		env["ARCOMSTR"]             = "  \033[0;31;140mAR\033[0m     $TARGET" -		env["RANLIBCOMSTR"]         = "  \033[0;31;140mRANLIB\033[0m $TARGET" -		env["QT4_RCCCOMSTR"]        = "  \033[0;34;140mRCC\033[0m    $TARGET" -		env["QT4_UICCOMSTR"]        = "  \033[0;34;140mUIC\033[0m    $TARGET" -		env["QT4_MOCFROMHCOMSTR"]   = "  \033[0;34;140mMOC\033[0m    $TARGET" -		env["QT4_MOCFROMCXXCOMSTR"] = "  \033[0;34;140mMOC\033[0m    $TARGET" -		#Progress('  \033[0;35;140mDEP\033[0m $TARGET\n', overwrite = True) +  if sys.stdout.isatty() and env["PLATFORM"] != "win32": +    env["CCCOMSTR"]             = "  \033[0;33;140mCC\033[0m     $TARGET" +    env["CXXCOMSTR"]            = "  \033[0;32;140mCXX\033[0m    $TARGET" +    env["LINKCOMSTR"]           = "  \033[0;31;140mLINK\033[0m   $TARGET" +    env["ARCOMSTR"]             = "  \033[0;31;140mAR\033[0m     $TARGET" +    env["RANLIBCOMSTR"]         = "  \033[0;31;140mRANLIB\033[0m $TARGET" +    env["QT4_RCCCOMSTR"]        = "  \033[0;34;140mRCC\033[0m    $TARGET" +    env["QT4_UICCOMSTR"]        = "  \033[0;34;140mUIC\033[0m    $TARGET" +    env["QT4_MOCFROMHCOMSTR"]   = "  \033[0;34;140mMOC\033[0m    $TARGET" +    env["QT4_MOCFROMCXXCOMSTR"] = "  \033[0;34;140mMOC\033[0m    $TARGET" +    env["GENCOMSTR"]            = "  \033[0;34;140mGEN\033[0m    $TARGET" +    #Progress(                     "  \033[0;35;140mDEP\033[0m    $TARGET\n") +  else : +    env["CCCOMSTR"]             = "  CC     $TARGET" +    env["CXXCOMSTR"]            = "  CXX    $TARGET" +    env["LINKCOMSTR"]           = "  LINK   $TARGET" +    env["ARCOMSTR"]             = "  AR     $TARGET" +    env["RANLIBCOMSTR"]         = "  RANLIB $TARGET" +    env["QT4_RCCCOMSTR"]        = "  RCC    $TARGET" +    env["QT4_UICCOMSTR"]        = "  UIC    $TARGET" +    env["QT4_MOCFROMHCOMSTR"]   = "  MOC    $TARGET" +    env["QT4_MOCFROMCXXCOMSTR"] = "  MOC    $TARGET" +    env["GENCOMSTR"]            = "  GEN    $TGENGET" +    #Progress('  DEP $TARGET\n') + +# Default compiler flags +if int(ARGUMENTS.get("optimize", 0)) == 1 : +	if env["PLATFORM"] == "win32" : +		env.Append(CCFLAGS = "/O2")  	else : -		env["CCCOMSTR"]     = "  CC     $TARGET" -		env["CXXCOMSTR"]    = "  CXX    $TARGET" -		env["LINKCOMSTR"]   = "  LINK   $TARGET" -		env["ARCOMSTR"]     = "  AR     $TARGET" -		env["RANLIBCOMSTR"] = "  RANLIB $TARGET" -		#Progress('  \033[0;35;140mDEP\033[0m $TARGET\n', overwrite = True) - -# FIXME: Should check compiler -if env["PLATFORM"] != "win32" : -	if ARGUMENTS.get("debug", 1) : -		env.Append(CCFLAGS = "-g") -else : -	if ARGUMENTS.get("debug", 1) : +		env.Append(CCFLAGS = "-O2") + +if int(ARGUMENTS.get("debug", 1)) == 1 : +	if env["PLATFORM"] == "win32" :  		env.Append(CCFLAGS = ["/Zi", "/MDd"]) +	else : +		env.Append(CCFLAGS = "-g") + +if int(ARGUMENTS.get("universal", 0)) == 1 : +	assert(env["PLATFORM"] == "darwin") +	env.Append(CCFLAGS = [ +			"-isysroot", "/Developer/SDKs/MacOSX10.4u.sdk",  +			"-arch", "i386",  +			"-arch", "ppc"]) +	env.Append(LINKFLAGS = [ +			"-mmacosx-version-min=10.4",  +			"-Wl", "-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk",  +			"-arch", "i386",  +			"-arch", "ppc"]) + +if int(ARGUMENTS.get("warnings", 1)) == 1 : +	if env["PLATFORM"] == "win32" : +		env.Append(CCFLAGS = ["/Wall"]) +	else : +		env.Append(CCFLAGS = ["-W", "-Wall"]) +		#env.Append(CCFLAGS = ["-W", "-Wall", "-Wredundant-decls", "-pedantic", "-Wno-long-long", "-Woverloaded-virtual", "-Wundef", "-Wfloat-equal", "-Wold-style-cast"]) + +if int(ARGUMENTS.get("coverage", 0)) == 1 : +	assert(env["PLATFORM"] != "win32") +	env.Append(CCFLAGS = ["-fprofile-arcs", "-ftest-coverage"]) +	env.Append(LINKFLAGS = ["-fprofile-arcs", "-ftest-coverage"]) + +if env["PLATFORM"] == "win32" :  	env.Append(CCFLAGS = "/EHsc")  if env["PLATFORM"] == "darwin" :  	env.Append(FRAMEWORKS = "AppKit") -print "Platform: " + env["PLATFORM"]  Export("env") +  ################################################################################  # Platform configuration  ################################################################################ @@ -75,22 +115,56 @@ if conf.CheckCHeader("expat.h") and conf.CheckLib("expat") :  conf.Finish() +bundledExpat = False  if not env.get("HAVE_EXPAT", 0) :  	print "Expat or LibXML not found. Using bundled Expat"  	SConscript("3rdParty/Expat/SConscript")  	env["HAVE_EXPAT"] = 1 +	bundledExpat = True  ################################################################################  # Project files  ################################################################################ +# Third-party modules  SConscript([  		"3rdParty/CppUnit/SConscript",  		"3rdParty/Boost/SConscript",  		"3rdParty/LibIDN/SConscript", -		"3rdParty/SQLite/SConscript", -		"Swiften/SConscript", -		"Swift/SConscript", -		"QA/UnitTest/SConscript", -	]) +		"3rdParty/SQLite/SConscript"]) + +# Swiften +SConscript("Swiften/SConscript") + +# Projects +for dir in os.listdir(".") : +	if dir in ["QA", "Swiften"] : +		continue  +	sconscript = os.path.join(dir, "SConscript") +	if os.path.isfile(sconscript) : +		SConscript(sconscript) + +# QA +SConscript("QA/SConscript") + + +################################################################################ +# Print summary +################################################################################ + +print +print "		 Build Configuration" +print "		 -------------------" + +parsers = [] +if env.get("HAVE_LIBXML", 0): +	parsers.append("LibXML") +if env.get("HAVE_EXPAT", 0): +	parsers.append("Expat") +	if bundledExpat: +		parsers.append("(Bundled)") +print "		 XML Parsers: " + ' '.join(parsers) + +print "		 TLS Support: " + ("OpenSSL" if env["HAVE_OPENSSL"] else "Disabled") +print diff --git a/Swift/QtUI/QtSystemTray.cpp b/Swift/QtUI/QtSystemTray.cpp index b22da6b..f1c8e27 100644 --- a/Swift/QtUI/QtSystemTray.cpp +++ b/Swift/QtUI/QtSystemTray.cpp @@ -18,4 +18,4 @@ void QtSystemTray::setUnreadMessages(bool some) {  	trayIcon_->setIcon(some ? newMessageIcon_ : standardIcon_);  } -}
\ No newline at end of file +} diff --git a/Swift/QtUI/Roster/QtTreeWidgetItem.cpp b/Swift/QtUI/Roster/QtTreeWidgetItem.cpp index 51784df..27e978c 100644 --- a/Swift/QtUI/Roster/QtTreeWidgetItem.cpp +++ b/Swift/QtUI/Roster/QtTreeWidgetItem.cpp @@ -152,4 +152,4 @@ bool QtTreeWidgetItem::isExpanded() {  	return expanded_;  } -}
\ No newline at end of file +} diff --git a/Swift/QtUI/Roster/RosterDelegate.h b/Swift/QtUI/Roster/RosterDelegate.h index 934f0bb..9ec800f 100644 --- a/Swift/QtUI/Roster/RosterDelegate.h +++ b/Swift/QtUI/Roster/RosterDelegate.h @@ -8,7 +8,7 @@ namespace Swift {  		QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const;  		void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const;  	private: -		static const int avatarSize_ = 32; +		static const int avatarSize_ = 28;  		static const int margin_ = 4;  	};  } diff --git a/Swift/QtUI/Roster/RosterModel.cpp b/Swift/QtUI/Roster/RosterModel.cpp index 1df2117..f54290a 100644 --- a/Swift/QtUI/Roster/RosterModel.cpp +++ b/Swift/QtUI/Roster/RosterModel.cpp @@ -68,4 +68,4 @@ int RosterModel::rowCount(const QModelIndex& parent) const {  	return item->rowCount();  } -}
\ No newline at end of file +} diff --git a/Swift/QtUI/Roster/RosterModel.h b/Swift/QtUI/Roster/RosterModel.h index fc9b1f3..d32f241 100644 --- a/Swift/QtUI/Roster/RosterModel.h +++ b/Swift/QtUI/Roster/RosterModel.h @@ -26,4 +26,4 @@ private:  	QtTreeWidgetItem* tree_;  }; -}
\ No newline at end of file +} diff --git a/Swift/QtUI/SConscript b/Swift/QtUI/SConscript index a5993be..36cf850 100644 --- a/Swift/QtUI/SConscript +++ b/Swift/QtUI/SConscript @@ -38,13 +38,13 @@ myenv.MergeFlags(env["EXPAT_FLAGS"])  myenv.MergeFlags(env["ZLIB_FLAGS"])  myenv.MergeFlags(env["OPENSSL_FLAGS"]) -myenv.Tool("qt4") +myenv.Tool("qt4", toolpath = ["#/BuildTools/SCons/Tools"])  myenv.EnableQt4Modules(['QtCore', 'QtGui', 'QtWebKit'], debug = False)  myenv.Append(CPPPATH = ["/usr/include/phonon"])  myenv.Append(CPPPATH = ["."]) -myenv.Command("DefaultTheme.qrc", "../resources/themes/Default", generateDefaultTheme) +myenv.Command("DefaultTheme.qrc", "../resources/themes/Default", Action(generateDefaultTheme, cmdstr = "$GENCOMSTR"))  sources = [  		"main.cpp", | 
 Swift
 Swift