| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Related information from Nemurimasu Neiro:
stay away from find_library!
due to an undocumented feature of find_xxx functions in CMake, no
additional libraries may be found after the first call to a find_xxx
function that searches the prebuilt libraries folder. CMake will request
the folder contents *at most once* and libraries added by install.py
will be missed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
libs (linux)
This patch fixes the problem that there were no 'developer' symlinks
for the prebuilt packages (which is not needed for runtim), causing
the casual user that tries to compile the viewer on linux (without
using --standalone) to link against their system libs (while using
the header files of the prebuilt versions), often causing linker
errors.
It also fixes the fact that a few libraries were completely missing,
most notably the dbusglib package only had header files and not
a library at all! libgio and libpangocairo where missing from the
link command line so that the wrong libraries were picked up, if
any at all.
Finally, the last GTK related prebuilt libraries have simply been
removed from the packaging: linux has those installed (or else
the users will know how to install them as soon as they see that
the viewer complains about a missing library). This is much more
stable, as all those libraries more or less form a whole.
Or rather, the libraries that use glib, as especially that one
gives a problem at the moment since the latest glib has new
g_malloc_n functions that don't exist in the prebuilt glib.
Note the difference between a USER compiling her own viewer,
and the imprudence team compiling a release:
When the imprudence team compiles a release we need to create
a portable binary that runs on many versions of linux. In order
to achieve that we link against "old" library versions, so
that the viewer still works on old operating systems, and
(hopefull) also on newer systems, since libraries with the
same SONAME are backwards compatible. With g_malloc_n as
example: our viewer binary doesn't use that function, so
a user that links with their own glib will never have a problem,
whether or not his library provides this function.
On the other hand, when a user gets the sources and compiles
his own viewer he wants to use the LATEST library versions:
his own operating system ones. The best way to achieve this
is to configure with --standalone, but that currently demands
that ALL libraries are installed on her system, including
a few very-hard-to-get libraries. If she therefore chooses
to configure without --standalone, she suddenly gets all
the old library versions, forcing her to at least link against
those at compile time (in order to minimize the risk of version
incompatibilities). A better solution for the do-it-yourself
user would be to have a --semi-standalone configuration that
only uses the hard-to-get prebuilt libs and further uses
as much the operating system libraries as possible. For most
of the hard-to-get libraries this is no problem since they
all only depend on libc and similar stable ABI libs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use pkg_check_modules to find freealut (and openal) for STANDALONE.
Non-standalone is untouched by this version.
The changes relative to snowglobe (for the STANDALONE path) is
that I removed the 'include(FindOpenAL) (that comes with cmake)
which not only doesn't find libalut, but even sets the wrong
cmake variables (it sets OPENAL_LIBRARY, and our cmake scripts
*use* OPENAL_LIBRARIES). Moreover, under the assumption that
STANDALONE really is only for linux (and I think that is so),
every linux distribution DOES have freealut (and openal) installed
with a pkg-config anyway. I also removed pkg_check_modules(openal)
because it is redundant: freealut pulls that in already.
|
|
|
|
|
| |
Revert the changes introduced in
http://github.com/AlericInglewood/imprudence/commit/e71d3ea2fad63fa2ec81685a9b09c1bed6b493be
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Note that indra/cmake/CMakeLists.txt is missing on imprudence, so
I couldn't add 'FindZLIB.cmake' to the list of source files
(see
http://svn.secondlife.com/trac/linden/browser/projects/2009/snowglobe/trunk/indra/cmake/CMakeLists.txt)
I added a comment to
http://github.com/mccabe/imprudence/commit/39f625963e408ec5dd394e202506700259b9b508
that adds an empty indra/cmake/CMakeLists.txt
If Jacek follows up and copies snowglobe's CMakeLists.txt then she'll
have to remove the FindZLIB.cmake from it if she tests it before
merging with THIS commit. In that case it has to be added back when
merging that commit with this one.
Tested on imprudence with cmake 2.8.2:
* Without patch, 'configure' takes 100 seconds.
* With patch, 'configure' takes 4 seconds.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch only affects --standalone. It was basically ported
from Snowglobe with the following change: If LL_TESTS is not
set, then tut.h is not required (this is an improvement,
because if LL_TESTS is not set no tests should be created or run).
I tested it with -DLL_TESTS:BOOL=ON, -DLL_TESTS:BOOL=OFF and
no -DLL_TESTS* at all, with and without tut installed, internally
and externally. Things worked as expected. Most notably, with
tut.h installed in libraries/include/, it is NOT found. This is
necessary because using -Ilibraries/include for standalone is
a no no: prebuilt stuff might be downloaded, but we don't want
to use it! That directory contains potentially many other libraries.
|
| |
| |
| |
| |
| |
| |
| |
| | |
See http://redmine.imprudenceviewer.org/issues/561
Fixed erroneous use of optimization flags when not compiling Release.
Also removed -DLL_VECTORIZE from compile options: that is set in
a header file (llv4math.h), not on the commandline.
Patch affects only 64 bit linux.
|
| |
| |
| |
| |
| |
| | |
See http://redmine.imprudenceviewer.org/issues/552
Add FindNDOF.cmake and treat it like every other library (on
standalone).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
"CMake Warning (dev) at CMakeLists.txt:36 (add_subdirectory):
The source directory
/home/jacek/imprudence/linden/indra/cmake
does not contain a CMakeLists.txt file.
CMake does not support this case but it used to work accidentally and
is being allowed for compatibility.
Policy CMP0014 is not set: Input directories must have CMakeLists.txt.
Run "cmake --help-policy CMP0014" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
This warning is for project developers. Use -Wno-dev to suppress it."
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Note that indra/cmake/CMakeLists.txt is missing on imprudence, so
I couldn't add 'FindZLIB.cmake' to the list of source files
(see
http://svn.secondlife.com/trac/linden/browser/projects/2009/snowglobe/trunk/indra/cmake/CMakeLists.txt)
I added a comment to
http://github.com/mccabe/imprudence/commit/39f625963e408ec5dd394e202506700259b9b508
that adds an empty indra/cmake/CMakeLists.txt
If Jacek follows up and copies snowglobe's CMakeLists.txt then she'll
have to remove the FindZLIB.cmake from it if she tests it before
merging with THIS commit. In that case it has to be added back when
merging that commit with this one.
Tested on imprudence with cmake 2.8.2:
* Without patch, 'configure' takes 100 seconds.
* With patch, 'configure' takes 4 seconds.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch only affects --standalone. It was basically ported
from Snowglobe with the following change: If LL_TESTS is not
set, then tut.h is not required (this is an improvement,
because if LL_TESTS is not set no tests should be created or run).
I tested it with -DLL_TESTS:BOOL=ON, -DLL_TESTS:BOOL=OFF and
no -DLL_TESTS* at all, with and without tut installed, internally
and externally. Things worked as expected. Most notably, with
tut.h installed in libraries/include/, it is NOT found. This is
necessary because using -Ilibraries/include for standalone is
a no no: prebuilt stuff might be downloaded, but we don't want
to use it! That directory contains potentially many other libraries.
|
| |
| |
| |
| |
| |
| |
| |
| | |
See http://redmine.imprudenceviewer.org/issues/561
Fixed erroneous use of optimization flags when not compiling Release.
Also removed -DLL_VECTORIZE from compile options: that is set in
a header file (llv4math.h), not on the commandline.
Patch affects only 64 bit linux.
|
| |
| |
| |
| | |
See http://redmine.imprudenceviewer.org/issues/560
|
|/
|
|
|
|
| |
See http://redmine.imprudenceviewer.org/issues/552
Add FindNDOF.cmake and treat it like every other library (on
standalone).
|
|
|
|
|
|
|
|
| |
due to an undocumented feature of find_xxx functions in CMake, no
additional libraries may be found after the first call to a find_xxx
function that searches the prebuilt libraries folder. CMake will request
the folder contents *at most once* and libraries added by install.py
will be missed.
|
|
|
|
|
|
| |
transparency
todo: do it less hacky
|
| |
|
|
|
|
| |
dependencies
|
| |
|
|
|
|
| |
Contains DejaVu Sans Condensed, Liberation Sans, and Vera Mono.
|
| |
|
|
|
|
|
| |
my custom builds were linking against /usr/local/lib/libjpeg.8.dylib and
causing a version mismatch error when trying to use JPEGs
|
|
|
|
| |
to cmake
|
|
|
|
| |
modularsystems.sl should be changed!
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
(Reverts part of commit 30945b74.)
|
| |
|
|
|
|
|
|
|
| |
* Don't build with libELFIO (lib not working).
* Use shared libpng12 instead of static library
(fixes mozlib incompat for users with system libpng14).
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
(Cherry picked by Jacek from f604a685)
|
|
|
|
| |
(Cherry picked by Jacek from 2e96ac24)
|
|
|
|
| |
(Cherry picked by Jacek from 13412855)
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|