- fixed serious bug introduced with win32 compatibility

- preset name display now only shows file name, not full path



git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/trunk@471 6778bc44-b910-0410-a7a0-be141de4315d
This commit is contained in:
w1z7ard
2007-09-22 17:20:47 +00:00
parent 665669afee
commit fa900a0deb
13 changed files with 130 additions and 68 deletions

View File

@ -51,9 +51,29 @@ extern FILE *fmemopen(void *buf, size_t len, const char *pMode);
#define STRING_BUFFER_SIZE 1024*150
#define STRING_LINE_SIZE 1024
#ifdef LINUX
#define projectM_isnan isnan
#endif
#ifdef WIN32
#define projectM_isnan(x) ((x) != (x))
#endif
#ifdef LINUX
#define projectM_fmax fmax
#endif
#ifdef WIN32
#define projectM_fmax(x,y) ((x) >= (y) ? (x): (y))
#endif
#ifdef LINUX
#define projectM_fmin fmin
#endif
#ifdef WIN32
#define projectM_fmin(x,y) ((x) <= (y) ? (x): (y))
#endif
#ifndef TRUE
#define TRUE 1

View File

@ -79,8 +79,6 @@ float PrefunExpr::eval_prefun_expr ( int mesh_i, int mesh_j )
}
delete(arg_list);
#ifdef EVAL_DEBUG_DOUBLE
DWRITE ( "]" );
#endif
@ -88,8 +86,10 @@ float PrefunExpr::eval_prefun_expr ( int mesh_i, int mesh_j )
/* Now we call the function, passing a list of
floats as its argument */
return ( func_ptr ) ( arg_list );
const float value = ( func_ptr ) ( arg_list );
delete(arg_list);
return value;
}

View File

@ -311,6 +311,6 @@ std::auto_ptr<Preset> IdlePreset::allocate(const PresetInputs & presetInputs, Pr
{
std::istringstream in(presetText());
return std::auto_ptr<Preset>(new Preset(in, presetInputs, presetOutputs, IDLE_PRESET_NAME));
return std::auto_ptr<Preset>(new Preset(in, IDLE_PRESET_NAME, presetInputs, presetOutputs));
}

View File

@ -118,23 +118,15 @@ void MoodBar::calculateMood
stretchNormalize(rgb_right);
stretchNormalize(rgb_avg);
/// @bug verify normalized m_ringBuffer
//standardNormalize(rgb_avg);
//standardNormalize(rgb_left);
//standardNormalize(rgb_right);
//std::cerr << "rgb_avg: " << rgb_avg[0] << "," << rgb_avg[1] << "," << rgb_avg[2] << std::endl;
#ifdef ASSERT_MOODBAR
#if 0
std::cerr << "rgb_avg: " << rgb_avg[0] << "," << rgb_avg[1] << "," << rgb_avg[2] << std::endl;
for (i = 0; i < 3; i++) {
assert(rgb_avg[i] <= 1.0);
assert(rgb_avg[i] >= 0.0);
}
#endif
}
@ -186,14 +178,18 @@ void MoodBar::stretchNormalize (float * rgb)
// Append latest un-normalized value on ring buffer
m_ringBuffers[c].append(rgb[c]);
unsigned int numvals = RingBuffer<float>::RING_BUFFER_SIZE;
std::cerr << "current = " << m_ringBuffers[c].current() << std::endl;
const unsigned int numvals = RingBuffer<float>::RING_BUFFER_SIZE;
if (numvals == 0)
return;
mini = maxi = m_ringBuffers[c].back();
int oldcurrent = m_ringBuffers[c].current();
std::cerr << "!" << std::endl;
mini = maxi = m_ringBuffers[c].back();
// Compute max and min m_ringBuffer of the array
for (i = 1; i < numvals; i++)
{
@ -205,6 +201,8 @@ void MoodBar::stretchNormalize (float * rgb)
mini = _tmpval;
}
assert((oldcurrent % RingBuffer<float>::RING_BUFFER_SIZE) == (m_ringBuffers[c].current() % RingBuffer<float>::RING_BUFFER_SIZE));
// Compute array average excluding the maximum and minimum ranges
for (i = 0; i < numvals; i++)
{
@ -216,6 +214,7 @@ void MoodBar::stretchNormalize (float * rgb)
t++;
}
}
assert((oldcurrent % RingBuffer<float>::RING_BUFFER_SIZE) == (m_ringBuffers[c].current() % RingBuffer<float>::RING_BUFFER_SIZE));
// Now compute average values if we partition the elements into
// two sets segmented by the previously computed average
@ -238,6 +237,7 @@ void MoodBar::stretchNormalize (float * rgb)
}
}
}
assert((oldcurrent % RingBuffer<float>::RING_BUFFER_SIZE) == (m_ringBuffers[c].current() % RingBuffer<float>::RING_BUFFER_SIZE));
// This normalizes the computations in the previous for loop
// so they represent proper averages of their respective sets
@ -269,6 +269,7 @@ void MoodBar::stretchNormalize (float * rgb)
}
}
}
assert((oldcurrent % RingBuffer<float>::RING_BUFFER_SIZE) == (m_ringBuffers[c].current() % RingBuffer<float>::RING_BUFFER_SIZE));
avguu /= (float) tu;
avgbb /= (float) tb;

View File

@ -45,6 +45,8 @@ public:
/// pcmL/R data buffers as inputs
void calculateMood(float * rgb_left, float * rgb_right, float * rgb_avg);
void stretchNormalize (float * colors);
private:
void resetBuffer() ;
@ -63,7 +65,6 @@ private:
float m_amplitudes_right[24];
float m_amplitudes_avg[24];
void stretchNormalize (float * colors);
static const unsigned int s_bark_bands[24];
RingBuffer<float> m_ringBuffers[3];

View File

@ -38,12 +38,11 @@
#include <fstream>
Preset::Preset(std::istream & in, const PresetInputs & presetInputs, PresetOutputs & presetOutputs, const std::string & _presetName):
Preset::Preset(std::istream & in, const std::string & presetName, const PresetInputs & presetInputs, PresetOutputs & presetOutputs):
builtinParams(presetInputs, presetOutputs),
file_path(_presetName),
m_presetName(presetName),
m_presetOutputs(presetOutputs),
m_presetInputs(presetInputs)
{
m_presetOutputs.customWaves.clear();
@ -54,9 +53,10 @@ Preset::Preset(std::istream & in, const PresetInputs & presetInputs, PresetOutpu
}
Preset::Preset(const std::string & filename, const PresetInputs & presetInputs, PresetOutputs & presetOutputs):
Preset::Preset(const std::string & absoluteFilePath, const std::string & presetName, const PresetInputs & presetInputs, PresetOutputs & presetOutputs):
builtinParams(presetInputs, presetOutputs),
file_path(filename),
m_absoluteFilePath(absoluteFilePath),
m_presetName(presetName),
m_presetOutputs(presetOutputs),
m_presetInputs(presetInputs)
{
@ -64,7 +64,7 @@ Preset::Preset(const std::string & filename, const PresetInputs & presetInputs,
m_presetOutputs.customWaves.clear();
m_presetOutputs.customShapes.clear();
initialize(filename);
initialize(absoluteFilePath);
}
@ -491,7 +491,7 @@ int Preset::readIn(std::istream & fs) {
return PROJECTM_ERROR;
}
this->name = std::string(tmp_name);
/// @note We ignore the preset name because [preset00] is just not so useful
// Loop through each line in file, trying to succesfully parse the file.
// If a line does not parse correctly, keep trucking along to next line.

View File

@ -60,17 +60,19 @@ public:
/// Load a preset by filename with input and output buffers specified.
/// This is the only proper way to allocate a new preset.
/// \param filename the absolute file path of a preset to load from the file system
/// \param absoluteFilePath the absolute file path of a preset to load from the file system
/// \param presetName a descriptive name for the preset. Usually just the file name
/// \param presetInputs a const reference to read only projectM engine variables
/// \param presetOutputs initialized and filled with data parsed from a preset
Preset(const std::string & filename, const PresetInputs & presetInputs, PresetOutputs & presetOutputs);
Preset(const std::string & absoluteFilePath, const std::string & presetName, const PresetInputs & presetInputs, PresetOutputs & presetOutputs);
/// Load a preset from a stream with input and output buffers specified.
/// This is the only proper way to allocate a new preset.
/// \param in an already initialized input stream to read the preset file from
/// \param presetName a descriptive name for the preset. Usually just the file name
/// \param presetInputs a const reference to read only projectM engine variables
/// \param presetOutputs initialized and filled with data parsed from a preset
Preset(std::istream & in, const PresetInputs & presetInputs, PresetOutputs & presetOutputs, const std::string & _presetName);
Preset(std::istream & in, const std::string & presetName, const PresetInputs & presetInputs, PresetOutputs & presetOutputs);
~Preset();
@ -83,9 +85,7 @@ public:
/// @bug encapsulate
BuiltinParams builtinParams;
/// Preset name, very boring, like [preset00]
std::string name;
/// Used by parser to find/create custom waves and shapes. May be refactored
template <class CustomObject>
static CustomObject * find_custom_object(int id, std::vector<CustomObject*> & customObjects);
@ -110,7 +110,7 @@ public:
/// \returns a file path string
std::string absoluteFilePath() const
{
return file_path;
return m_absoluteFilePath;
}
/// Accessor method for the preset outputs instance associated with this preset
@ -120,8 +120,22 @@ public:
return m_presetOutputs;
}
/// Sets the descriptive name for this preset (typically the file name)
void setPresetName ( const std::string& theValue )
{
m_presetName = theValue;
}
/// Gets the descriptive name for this preset (typically the file name)
std::string presetName() const
{
return m_presetName;
}
/// @bug encapsulate
PresetOutputs::cwave_container customWaves;
PresetOutputs::cshape_container customShapes;
@ -136,7 +150,10 @@ public:
private:
// The absolute file path of the preset
std::string file_path;
std::string m_absoluteFilePath;
// The name for the preset. Usually the file name, but in theory anything goes
std::string m_presetName;
void initialize(const std::string & pathname);
void initialize(std::istream & in);

View File

@ -53,6 +53,7 @@ void PresetLoader::rescan()
// Clear the directory entry collection
m_entries.clear();
m_presetNames.clear();
// If directory already opened, close it first
if (m_dir)
@ -70,6 +71,7 @@ void PresetLoader::rescan()
struct dirent * dir_entry;
std::set<std::string> alphaSortedFileSet;
std::set<std::string> alphaSortedPresetNameSet;
while ((dir_entry = readdir(m_dir)) != NULL)
{
@ -94,6 +96,7 @@ void PresetLoader::rescan()
// Add to our directory entry collection
alphaSortedFileSet.insert(out.str());
alphaSortedPresetNameSet.insert(filename);
// the directory entry struct is freed elsewhere
}
@ -102,6 +105,12 @@ void PresetLoader::rescan()
for (std::set<std::string>::iterator pos = alphaSortedFileSet.begin();
pos != alphaSortedFileSet.end();++pos)
m_entries.push_back(*pos);
// Push all preset names in similar fashion
for (std::set<std::string>::iterator pos = alphaSortedPresetNameSet.begin();
pos != alphaSortedPresetNameSet.end();++pos)
m_presetNames.push_back(*pos);
}
std::auto_ptr<Preset> PresetLoader::loadPreset(unsigned int index, const PresetInputs & presetInputs, PresetOutputs & presetOutputs) const
@ -112,11 +121,12 @@ std::auto_ptr<Preset> PresetLoader::loadPreset(unsigned int index, const PresetI
assert(index < m_entries.size());
// Return a new autopointer to a present
return std::auto_ptr<Preset>(new Preset(m_entries[index], presetInputs, presetOutputs));
return std::auto_ptr<Preset>(new Preset(m_entries[index], m_presetNames[index], presetInputs, presetOutputs));
}
void PresetLoader::handleDirectoryError()
{
#ifdef WIN32
std::cerr << "[PresetLoader] warning: errno unsupported on win32 platforms. fix me" << std::endl;
#else

View File

@ -62,6 +62,8 @@ class PresetLoader {
// vector chosen for speed, but not great for reverse index lookups
std::vector<std::string> m_entries;
std::vector<std::string> m_presetNames;
};
#endif

View File

@ -6,8 +6,8 @@ template<typename kind>
class RingBuffer {
public:
// static const unsigned long RING_BUFFER_SIZE = 32768;
static const unsigned long RING_BUFFER_SIZE = 16384;
static const unsigned long RING_BUFFER_SIZE = 1024;
// static const unsigned long RING_BUFFER_SIZE = 16384;
private:
kind buffer[RING_BUFFER_SIZE];
@ -29,7 +29,7 @@ public:
~RingBuffer() { }
void append(kind value) {
if (current_element >= RING_BUFFER_SIZE) {
if (current_element == RING_BUFFER_SIZE) {
current_element = 0;
}
@ -41,14 +41,15 @@ public:
kind back() {
if (current_element <= 0) {
if (current_element == 0) {
current_element = RING_BUFFER_SIZE;
}
--current_element;
return buffer[current_element];
}
kind get() {
kind forward() {
if(current_element >= RING_BUFFER_SIZE) {
current_element = 0;
}

View File

@ -175,7 +175,7 @@ void projectM::default_key_handler( projectMEvent event, projectMKeycode keycode
}
m_activePreset = m_presetPos->allocate(this->presetInputs, this->presetOutputs);
renderer->setPresetName(m_activePreset->absoluteFilePath());
renderer->setPresetName(m_activePreset->presetName());
presetInputs.frame = 0;
smoothFrame = 0;
@ -190,7 +190,7 @@ void projectM::default_key_handler( projectMEvent event, projectMKeycode keycode
(this->presetInputs, this->presetOutputs);
assert(m_activePreset.get());
renderer->setPresetName(m_activePreset->absoluteFilePath());
renderer->setPresetName(m_activePreset->presetName());
presetInputs.frame = 0;
smoothFrame = 0;
break;
@ -214,7 +214,7 @@ void projectM::default_key_handler( projectMEvent event, projectMKeycode keycode
}
m_activePreset = m_presetPos->allocate(this->presetInputs, this->presetOutputs);
renderer->setPresetName(m_activePreset->absoluteFilePath());
renderer->setPresetName(m_activePreset->presetName());
presetInputs.frame = 0;
smoothFrame = 0;
break;

View File

@ -169,18 +169,30 @@ DLLEXPORT void projectM::renderFrame()
beatDetect->detectFromSamples();
#ifndef USE_MOODBAR
#define USE_MOODBAR
#endif
//#ifndef USE_MOODBAR
//#define USE_MOODBAR
//#endif
#ifdef USE_MOODBAR
float rgb_left[3], rgb_right[3], rgb_avg[3];
moodBar->calculateMood(rgb_left, rgb_right, rgb_avg);
//moodBar->calculateMood(rgb_left, rgb_right, rgb_avg);
//rgb_avg[0] = presetInputs.bass_att;
//rgb_avg[1] = presetInputs.mid_att;
//rgb_avg[2] = presetInputs.treb_att;
//moodBar->stretchNormalize(rgb_avg);
//presetInputs.bass_att = rgb_avg[0];
//presetInputs.mid_att = rgb_avg[1];
//presetInputs.treb_att = rgb_avg[2];
presetInputs.mood_r = rgb_avg[0];
presetInputs.mood_g = rgb_avg[1];
presetInputs.mood_b = rgb_avg[2];
#endif
DWRITE ( "=== vol: %f\tbass: %f\tmid: %f\ttreb: %f ===\n",
@ -210,7 +222,7 @@ DLLEXPORT void projectM::renderFrame()
m_activePreset2 = m_presetChooser->weightedRandom<PresetChooser::UniformRandomFunctor>
(presetInputs, &m_activePreset->presetOutputs() == &presetOutputs ? presetOutputs2 : presetOutputs);
assert(m_activePreset2.get());
renderer->setPresetName(m_activePreset2->absoluteFilePath());
renderer->setPresetName(m_activePreset2->presetName());
nohard=(int)(presetInputs.fps*3.5);
smoothFrame = (int)(presetInputs.fps * smoothDuration);
@ -533,7 +545,7 @@ void projectM::projectM_reset()
this->renderer = new Renderer ( width, height, gx, gy, renderTarget, textureManager, beatDetect, fontURL);
renderer->setPresetName(m_activePreset->absoluteFilePath());
renderer->setPresetName(m_activePreset->presetName());
printf ( "exiting projectM_init()\n" );
}
@ -843,9 +855,7 @@ int projectM::initPresetTools()
Eval::init_infix_ops();
/* Set the seed to the current time in seconds */
#ifdef WIN32
srand ( time ( NULL ) );
#endif
if ( ( m_presetLoader = new PresetLoader (presetURL)) == 0 )
{

View File

@ -66,12 +66,12 @@ fast_install=yes
# The host system.
host_alias=
host=i686-pc-linux-gnu
host=x86_64-unknown-linux-gnu
host_os=linux-gnu
# The build system.
build_alias=
build=i686-pc-linux-gnu
build=x86_64-unknown-linux-gnu
build_os=linux-gnu
# An echo program that does not interpret backslashes.
@ -97,7 +97,7 @@ with_gcc=yes
EGREP="/bin/grep -E"
# The linker used to build libraries.
LD="/usr/i686-pc-linux-gnu/bin/ld"
LD="/usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64"
# Whether we need hard or soft links.
LN_S="ln -s"
@ -325,10 +325,10 @@ variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COM
link_all_deplibs=unknown
# Compile-time system search path for libraries
sys_lib_search_path_spec="/usr/lib/gcc/i686-pc-linux-gnu/4.1.2 /usr/i686-pc-linux-gnu/lib /usr/lib /lib"
sys_lib_search_path_spec="/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 /usr/lib64 /lib64 /usr/x86_64-pc-linux-gnu/lib"
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/local/lib //usr//lib/opengl/xorg-x11/lib /usr/i686-pc-linux-gnu/lib /usr/lib/gcc/i686-pc-linux-gnu/4.1.2 /usr/lib/gcc/i686-pc-linux-gnu/4.2.0 /usr/lib/nspr /usr/lib/nss /usr/lib/openmotif-2.2 /usr/lib/qt4 /usr/kde/3.5/lib /usr/qt/3/lib /usr/games/lib /usr/lib/fltk-1.1 /usr/lib/libstdc++-v3/ "
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/local/lib //usr/lib32/opengl/nvidia/lib //usr/lib64/opengl/nvidia/lib /lib /usr/lib /lib64 /usr/lib64 /usr/local/lib64 /lib32 /usr/lib32 /usr/local/lib32 /usr/x86_64-pc-linux-gnu/lib /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32 /usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0/32 /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6 /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32 /usr/lib64/nspr /usr/lib64/nss /usr/lib64/openmotif-2.2 /usr/lib32/openmotif-2.2 /usr/lib/qt4 /usr/lib64/qt4 /usr/lib32/qt4 /usr/kde/3.5/lib /usr/kde/3.5/lib64 /usr/kde/3.5/lib32 /usr/qt/3/lib /usr/qt/3/lib64 /usr/qt/3/lib32 /opt/firefox /usr/games/lib /usr/games/lib32 /usr/lib/octave-2.1.73 "
# Fix the shell variable $srcfile for the compiler.
fix_srcfile_path=""
@ -7368,12 +7368,12 @@ fast_install=yes
# The host system.
host_alias=
host=i686-pc-linux-gnu
host=x86_64-unknown-linux-gnu
host_os=linux-gnu
# The build system.
build_alias=
build=i686-pc-linux-gnu
build=x86_64-unknown-linux-gnu
build_os=linux-gnu
# An echo program that does not interpret backslashes.
@ -7399,7 +7399,7 @@ with_gcc=yes
EGREP="/bin/grep -E"
# The linker used to build libraries.
LD="/usr/i686-pc-linux-gnu/bin/ld"
LD="/usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64"
# Whether we need hard or soft links.
LN_S="ln -s"
@ -7528,11 +7528,11 @@ striplib="strip --strip-unneeded"
# Dependencies to place before the objects being linked to create a
# shared library.
predep_objects="/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../crti.o /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/crtbeginS.o"
predep_objects="/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/crtbeginS.o"
# Dependencies to place after the objects being linked to create a
# shared library.
postdep_objects="/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/crtendS.o /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../crtn.o"
postdep_objects="/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64/crtn.o"
# Dependencies to place before the objects being linked to create a
# shared library.
@ -7544,7 +7544,7 @@ postdeps="-lstdc++ -lm -lgcc_s -lc -lgcc_s"
# The library search path used internally by the compiler when linking
# a shared library.
compiler_lib_search_path="-L/usr/lib/gcc/i686-pc-linux-gnu/4.1.2 -L/usr/lib/gcc/i686-pc-linux-gnu/4.1.2 -L/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../i686-pc-linux-gnu/lib -L/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../.."
compiler_lib_search_path="-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../.."
# Method to check whether dependent libraries are shared objects.
deplibs_check_method="pass_all"
@ -7624,10 +7624,10 @@ variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COM
link_all_deplibs=unknown
# Compile-time system search path for libraries
sys_lib_search_path_spec="/usr/lib/gcc/i686-pc-linux-gnu/4.1.2 /usr/i686-pc-linux-gnu/lib /usr/lib /lib"
sys_lib_search_path_spec="/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 /usr/lib64 /lib64 /usr/x86_64-pc-linux-gnu/lib"
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/local/lib //usr//lib/opengl/xorg-x11/lib /usr/i686-pc-linux-gnu/lib /usr/lib/gcc/i686-pc-linux-gnu/4.1.2 /usr/lib/gcc/i686-pc-linux-gnu/4.2.0 /usr/lib/nspr /usr/lib/nss /usr/lib/openmotif-2.2 /usr/lib/qt4 /usr/kde/3.5/lib /usr/qt/3/lib /usr/games/lib /usr/lib/fltk-1.1 /usr/lib/libstdc++-v3/ "
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/local/lib //usr/lib32/opengl/nvidia/lib //usr/lib64/opengl/nvidia/lib /lib /usr/lib /lib64 /usr/lib64 /usr/local/lib64 /lib32 /usr/lib32 /usr/local/lib32 /usr/x86_64-pc-linux-gnu/lib /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32 /usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0/32 /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6 /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32 /usr/lib64/nspr /usr/lib64/nss /usr/lib64/openmotif-2.2 /usr/lib32/openmotif-2.2 /usr/lib/qt4 /usr/lib64/qt4 /usr/lib32/qt4 /usr/kde/3.5/lib /usr/kde/3.5/lib64 /usr/kde/3.5/lib32 /usr/qt/3/lib /usr/qt/3/lib64 /usr/qt/3/lib32 /opt/firefox /usr/games/lib /usr/games/lib32 /usr/lib/octave-2.1.73 "
# Fix the shell variable $srcfile for the compiler.
fix_srcfile_path=""
@ -7673,12 +7673,12 @@ fast_install=yes
# The host system.
host_alias=
host=i686-pc-linux-gnu
host=x86_64-unknown-linux-gnu
host_os=linux-gnu
# The build system.
build_alias=
build=i686-pc-linux-gnu
build=x86_64-unknown-linux-gnu
build_os=linux-gnu
# An echo program that does not interpret backslashes.
@ -7704,7 +7704,7 @@ with_gcc=yes
EGREP="/bin/grep -E"
# The linker used to build libraries.
LD="/usr/i686-pc-linux-gnu/bin/ld"
LD="/usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64"
# Whether we need hard or soft links.
LN_S="ln -s"
@ -7932,10 +7932,10 @@ variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COM
link_all_deplibs=unknown
# Compile-time system search path for libraries
sys_lib_search_path_spec="/usr/lib/gcc/i686-pc-linux-gnu/4.1.2 /usr/i686-pc-linux-gnu/lib /usr/lib /lib"
sys_lib_search_path_spec="/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 /usr/lib64 /lib64 /usr/x86_64-pc-linux-gnu/lib"
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/local/lib //usr//lib/opengl/xorg-x11/lib /usr/i686-pc-linux-gnu/lib /usr/lib/gcc/i686-pc-linux-gnu/4.1.2 /usr/lib/gcc/i686-pc-linux-gnu/4.2.0 /usr/lib/nspr /usr/lib/nss /usr/lib/openmotif-2.2 /usr/lib/qt4 /usr/kde/3.5/lib /usr/qt/3/lib /usr/games/lib /usr/lib/fltk-1.1 /usr/lib/libstdc++-v3/ "
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/local/lib //usr/lib32/opengl/nvidia/lib //usr/lib64/opengl/nvidia/lib /lib /usr/lib /lib64 /usr/lib64 /usr/local/lib64 /lib32 /usr/lib32 /usr/local/lib32 /usr/x86_64-pc-linux-gnu/lib /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32 /usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0/32 /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6 /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32 /usr/lib64/nspr /usr/lib64/nss /usr/lib64/openmotif-2.2 /usr/lib32/openmotif-2.2 /usr/lib/qt4 /usr/lib64/qt4 /usr/lib32/qt4 /usr/kde/3.5/lib /usr/kde/3.5/lib64 /usr/kde/3.5/lib32 /usr/qt/3/lib /usr/qt/3/lib64 /usr/qt/3/lib32 /opt/firefox /usr/games/lib /usr/games/lib32 /usr/lib/octave-2.1.73 "
# Fix the shell variable $srcfile for the compiler.
fix_srcfile_path=""