tags 456104 + patch
stop

I went through the cheesetracker source: There was a name clash between
std::vector and a variable vector. Also lots of string.h and stdlib
includes were missing.

The attached patch fixes the problem / cheesetracker compiles and starts
up.

Another thing, scons completely ignored my

export CC=gcc-4.3
export CXX=g++-4.3

So shouldn't 

env['CXX'] = os.environ['CXX']
env['CC'] = os.environ['CC']

be added to SConstruct?

Soeren
diff -N -ur cheesetracker-0.9.15.2/debian/patches/debian-gcc4.3.patch cheesetracker-0.9.15.2-patched/debian/patches/debian-gcc4.3.patch
--- cheesetracker-0.9.15.2/debian/patches/debian-gcc4.3.patch	1970-01-01 01:00:00.000000000 +0100
+++ cheesetracker-0.9.15.2-patched/debian/patches/debian-gcc4.3.patch	2008-04-08 08:24:59.000000000 +0200
@@ -0,0 +1,303 @@
+diff -ur cheesetracker-0.9.15.2/cheesetracker/trackercore/file_writer.cpp cheesetracker-0.9.15.2-fix/cheesetracker/trackercore/file_writer.cpp
+--- cheesetracker-0.9.15.2/cheesetracker/trackercore/file_writer.cpp	2007-08-03 09:01:17.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/cheesetracker/trackercore/file_writer.cpp	2008-04-08 00:17:58.000000000 +0200
+@@ -30,6 +30,7 @@
+  *                                                                         *
+  ***************************************************************************/
+ 
++#include <string.h>
+ #include "file_writer.h"
+ 
+ File_Writer::File_Writer(){
+diff -ur cheesetracker-0.9.15.2/cheesetracker/trackercore/instrument.cpp cheesetracker-0.9.15.2-fix/cheesetracker/trackercore/instrument.cpp
+--- cheesetracker-0.9.15.2/cheesetracker/trackercore/instrument.cpp	2007-08-03 09:01:17.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/cheesetracker/trackercore/instrument.cpp	2008-04-08 00:18:34.000000000 +0200
+@@ -30,6 +30,7 @@
+  *                                                                         *
+  ***************************************************************************/
+ 
++#include <string.h>
+ #include <cassert>
+ #include "instrument.h"
+ 
+diff -ur cheesetracker-0.9.15.2/cheesetracker/trackercore/voice_control.cpp cheesetracker-0.9.15.2-fix/cheesetracker/trackercore/voice_control.cpp
+--- cheesetracker-0.9.15.2/cheesetracker/trackercore/voice_control.cpp	2007-08-03 09:01:17.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/cheesetracker/trackercore/voice_control.cpp	2008-04-08 00:19:21.000000000 +0200
+@@ -14,6 +14,7 @@
+  *                                                                         *
+  ***************************************************************************/
+ 
++#include <stdlib.h>
+ #include "voice_control.h"
+ #include "freq_conversion.h"
+ 
+diff -ur cheesetracker-0.9.15.2/common/components/audio/mixer.cpp cheesetracker-0.9.15.2-fix/common/components/audio/mixer.cpp
+--- cheesetracker-0.9.15.2/common/components/audio/mixer.cpp	2007-08-22 08:09:20.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/components/audio/mixer.cpp	2008-04-08 00:24:42.000000000 +0200
+@@ -30,6 +30,7 @@
+  *                                                                         *
+  ***************************************************************************/
+ 
++#include <string.h>
+ #include "mixer.h"
+ #include "math.h"
+ 
+diff -ur cheesetracker-0.9.15.2/common/components/data/dds.cpp cheesetracker-0.9.15.2-fix/common/components/data/dds.cpp
+--- cheesetracker-0.9.15.2/common/components/data/dds.cpp	2007-08-03 09:07:10.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/components/data/dds.cpp	2008-04-08 00:26:16.000000000 +0200
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "dds.h"
+ 
+ 
+@@ -138,7 +139,7 @@
+ 
+ };
+ 
+-vector_int& DDS::set_int_array_var(string p_var,const vector<int>& p_array) {
++vector_int& DDS::set_int_array_var(string p_var,const std::vector<int>& p_array) {
+ 
+ 	Data_Node_List::const_iterator I;
+ 	Data_Node new_node;
+@@ -160,7 +161,7 @@
+ 	return nodes[p_var].int_array;
+ }
+ 
+-vector_string& DDS::set_str_array_var(string p_var,const vector<string> &p_array) {
++vector_string& DDS::set_str_array_var(string p_var,const std::vector<string> &p_array) {
+ 
+ 	Data_Node_List::const_iterator I;
+ 	Data_Node new_node;
+@@ -183,7 +184,7 @@
+ }
+ 
+ 
+-vector_float& DDS::set_float_array_var(string p_var, const vector<float> &p_array) {
++vector_float& DDS::set_float_array_var(string p_var, const std::vector<float> &p_array) {
+ 
+ 	Data_Node_List::const_iterator I;
+ 	Data_Node new_node;
+@@ -367,7 +368,7 @@
+ 
+ }
+ 
+-const vector<int>& DDS::get_int_array_var(string p_var)  {
++const std::vector<int>& DDS::get_int_array_var(string p_var)  {
+ 
+ 	Data_Node_List::const_iterator I;
+ 
+@@ -382,7 +383,7 @@
+ 
+ }
+ 
+-const vector<string>& DDS::get_str_array_var(string p_var)  {
++const std::vector<string>& DDS::get_str_array_var(string p_var)  {
+ 
+ 	Data_Node_List::const_iterator I;
+ 
+@@ -398,7 +399,7 @@
+ 
+ }
+ 
+-const vector<float>& DDS::get_float_array_var(string p_var) {
++const std::vector<float>& DDS::get_float_array_var(string p_var) {
+ 
+ 	Data_Node_List::const_iterator I;
+ 
+diff -ur cheesetracker-0.9.15.2/common/components/data/dds.h cheesetracker-0.9.15.2-fix/common/components/data/dds.h
+--- cheesetracker-0.9.15.2/common/components/data/dds.h	2007-08-03 09:07:10.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/components/data/dds.h	2008-04-08 00:12:09.000000000 +0200
+@@ -25,9 +25,9 @@
+ 
+ class DDS;
+ 
+-typedef vector<int> vector_int;
+-typedef vector<string> vector_string;
+-typedef vector<float> vector_float;
++typedef std::vector<int> vector_int;
++typedef std::vector<string> vector_string;
++typedef std::vector<float> vector_float;
+ typedef VectorPointer<DDS> vector_dds;
+ typedef int data_size;
+ 
+@@ -79,9 +79,9 @@
+ 
+ 		};
+ 
+-		vector<string> string_array;
+-		vector<int> int_array;
+-		vector<float> float_array;
++		std::vector<string> string_array;
++		std::vector<int> int_array;
++		std::vector<float> float_array;
+ 
+ 		VectorPointer<DDS> dds_array;
+ 
+@@ -116,9 +116,9 @@
+ 
+ public:
+ 
+-	typedef vector<int> vector_int;
+-	typedef vector<string> vector_string;
+-	typedef vector<float> vector_float;
++	typedef std::vector<int> vector_int;
++	typedef std::vector<string> vector_string;
++	typedef std::vector<float> vector_float;
+ 	typedef VectorPointer<DDS> vector_dds;
+ 
+ 	Data_Node_List::const_iterator get_iterator_begin();
+diff -ur cheesetracker-0.9.15.2/common/components/data/dds_packer.cpp cheesetracker-0.9.15.2-fix/common/components/data/dds_packer.cpp
+--- cheesetracker-0.9.15.2/common/components/data/dds_packer.cpp	2007-08-03 09:07:10.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/components/data/dds_packer.cpp	2008-04-08 00:25:52.000000000 +0200
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "dds_packer.h"
+ 
+ 
+diff -ur cheesetracker-0.9.15.2/common/components/data/property_bridges.cpp cheesetracker-0.9.15.2-fix/common/components/data/property_bridges.cpp
+--- cheesetracker-0.9.15.2/common/components/data/property_bridges.cpp	2007-08-03 09:07:10.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/components/data/property_bridges.cpp	2008-04-08 00:26:35.000000000 +0200
+@@ -30,6 +30,7 @@
+  *                                                                         *
+  ***************************************************************************/
+ 
++#include <string.h>
+ #include "property_bridges.h"
+ 
+ 
+diff -ur cheesetracker-0.9.15.2/common/components/file/file_access.cpp cheesetracker-0.9.15.2-fix/common/components/file/file_access.cpp
+--- cheesetracker-0.9.15.2/common/components/file/file_access.cpp	2007-08-03 09:06:08.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/components/file/file_access.cpp	2008-04-08 00:25:26.000000000 +0200
+@@ -13,6 +13,7 @@
+  *   (at your option) any later version.                                   *
+  *                                                                         *
+  ***************************************************************************/
++#include <string.h>
+ #include "file_access.h"
+ 
+ File_Manager::File_Manager() {
+diff -ur cheesetracker-0.9.15.2/common/defines/pvector.h cheesetracker-0.9.15.2-fix/common/defines/pvector.h
+--- cheesetracker-0.9.15.2/common/defines/pvector.h	2007-08-03 09:07:25.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/defines/pvector.h	2008-04-08 00:12:09.000000000 +0200
+@@ -2,12 +2,11 @@
+ #define PVECTOR_H
+ 
+ #include <vector>
+-	using std::vector;
+ 
+ template<class T>
+ class VectorPointer {
+ 
+-	vector<T*> vector;
++	std::vector<T*> vector;
+ 
+ public:
+ 
+diff -ur cheesetracker-0.9.15.2/common/drivers/posix/mutex_lock_pthreads.h cheesetracker-0.9.15.2-fix/common/drivers/posix/mutex_lock_pthreads.h
+--- cheesetracker-0.9.15.2/common/drivers/posix/mutex_lock_pthreads.h	2007-08-04 10:39:45.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/drivers/posix/mutex_lock_pthreads.h	2008-04-08 00:23:38.000000000 +0200
+@@ -39,6 +39,7 @@
+ #include <pthread.h>
+ #include <errno.h>
+ #include <string.h>
++#include <stdlib.h>
+ /**
+   [EMAIL PROTECTED] Juan Linietsky
+   */
+diff -ur cheesetracker-0.9.15.2/common/drivers/posix/sound_driver_oss.cpp cheesetracker-0.9.15.2-fix/common/drivers/posix/sound_driver_oss.cpp
+--- cheesetracker-0.9.15.2/common/drivers/posix/sound_driver_oss.cpp	2007-08-21 08:38:41.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/drivers/posix/sound_driver_oss.cpp	2008-04-08 00:27:01.000000000 +0200
+@@ -32,6 +32,7 @@
+ 
+ #ifdef OSS_ENABLED
+ 
++#include <stdlib.h>
+ #include <cerrno>
+ #include <unistd.h>
+ #include "Error.h"
+diff -ur cheesetracker-0.9.15.2/common/os/path_data.cpp cheesetracker-0.9.15.2-fix/common/os/path_data.cpp
+--- cheesetracker-0.9.15.2/common/os/path_data.cpp	2007-08-03 09:03:59.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/os/path_data.cpp	2008-04-08 00:24:13.000000000 +0200
+@@ -27,6 +27,7 @@
+ //
+ #include "path_data.h"
+ #include <stdio.h>
++#include <stdlib.h>
+ 
+ string Path_Data::get_home_dir() {
+ 
+diff -ur cheesetracker-0.9.15.2/common/plugins/effects/custom/chorus_effect.cpp cheesetracker-0.9.15.2-fix/common/plugins/effects/custom/chorus_effect.cpp
+--- cheesetracker-0.9.15.2/common/plugins/effects/custom/chorus_effect.cpp	2007-08-03 09:04:28.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/plugins/effects/custom/chorus_effect.cpp	2008-04-08 00:21:23.000000000 +0200
+@@ -9,6 +9,7 @@
+ // Copyright: See COPYING file that comes with this distribution
+ //
+ //
++#include <string.h>
+ #include "chorus_effect.h"
+ 
+ 
+diff -ur cheesetracker-0.9.15.2/common/plugins/effects/custom/effect_echo.cpp cheesetracker-0.9.15.2-fix/common/plugins/effects/custom/effect_echo.cpp
+--- cheesetracker-0.9.15.2/common/plugins/effects/custom/effect_echo.cpp	2007-08-03 09:04:28.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/plugins/effects/custom/effect_echo.cpp	2008-04-08 00:22:14.000000000 +0200
+@@ -9,6 +9,7 @@
+ // Copyright: See COPYING file that comes with this distribution
+ //
+ //
++#include <string.h>
+ #include "effect_echo.h"
+ 
+ 
+diff -ur cheesetracker-0.9.15.2/common/plugins/effects/custom/effect_pshift.cpp cheesetracker-0.9.15.2-fix/common/plugins/effects/custom/effect_pshift.cpp
+--- cheesetracker-0.9.15.2/common/plugins/effects/custom/effect_pshift.cpp	2007-08-03 09:04:28.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/plugins/effects/custom/effect_pshift.cpp	2008-04-08 00:21:47.000000000 +0200
+@@ -9,6 +9,7 @@
+ // Copyright: See COPYING file that comes with this distribution
+ //
+ //
++#include <string.h>
+ #include "effect_pshift.h"
+ #include "math.h"
+ 
+diff -ur cheesetracker-0.9.15.2/common/plugins/effects/custom/effect_stereo_fx.cpp cheesetracker-0.9.15.2-fix/common/plugins/effects/custom/effect_stereo_fx.cpp
+--- cheesetracker-0.9.15.2/common/plugins/effects/custom/effect_stereo_fx.cpp	2007-08-03 09:04:28.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/plugins/effects/custom/effect_stereo_fx.cpp	2008-04-08 00:20:56.000000000 +0200
+@@ -9,6 +9,7 @@
+ // Copyright: See COPYING file that comes with this distribution
+ //
+ //
++#include <string.h>
+ #include "effect_stereo_fx.h"
+ 
+ 
+diff -ur cheesetracker-0.9.15.2/common/plugins/effects/ladspa/ladspa_effect.cpp cheesetracker-0.9.15.2-fix/common/plugins/effects/ladspa/ladspa_effect.cpp
+--- cheesetracker-0.9.15.2/common/plugins/effects/ladspa/ladspa_effect.cpp	2007-08-03 09:04:12.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/plugins/effects/ladspa/ladspa_effect.cpp	2008-04-08 00:22:39.000000000 +0200
+@@ -9,6 +9,7 @@
+ // Copyright: See COPYING file that comes with this distribution
+ //
+ //
++#include <string.h>
+ #include "ladspa_effect.h"
+ 
+ #ifdef LADSPA_ENABLED
+diff -ur cheesetracker-0.9.15.2/common/plugins/effects/ladspa/ladspa_effect.h cheesetracker-0.9.15.2-fix/common/plugins/effects/ladspa/ladspa_effect.h
+--- cheesetracker-0.9.15.2/common/plugins/effects/ladspa/ladspa_effect.h	2007-08-03 09:04:12.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/plugins/effects/ladspa/ladspa_effect.h	2008-04-08 00:23:03.000000000 +0200
+@@ -15,7 +15,7 @@
+ 
+ #ifdef LADSPA_ENABLED
+ 
+-
++#include <string.h>
+ #include "common/plugins/effects/ladspa/ladspa.h"
+ #include "components/audio/effect.h"
+ #include <vector>
+diff -ur cheesetracker-0.9.15.2/common/property_server/bridge_converter.cpp cheesetracker-0.9.15.2-fix/common/property_server/bridge_converter.cpp
+--- cheesetracker-0.9.15.2/common/property_server/bridge_converter.cpp	2007-08-03 09:07:20.000000000 +0200
++++ cheesetracker-0.9.15.2-fix/common/property_server/bridge_converter.cpp	2008-04-08 00:27:26.000000000 +0200
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "bridge_converter.h"
+ 
+ int BridgeConverter::get_short_string(BufferControl& p_buffer, string& p_string) {
diff -N -ur cheesetracker-0.9.15.2/debian/patches/series cheesetracker-0.9.15.2-patched/debian/patches/series
--- cheesetracker-0.9.15.2/debian/patches/series	2008-04-08 08:25:40.000000000 +0200
+++ cheesetracker-0.9.15.2-patched/debian/patches/series	2008-04-08 08:24:35.000000000 +0200
@@ -1,3 +1,4 @@
 debian-use-moc-qt3.patch
 debian-force-qt3-includes.patch
 debian-cheesetracker_32x32_icon.patch
+debian-gcc4.3.patch

Reply via email to