Commit Graph

247 Commits

Author SHA1 Message Date
ea464b9659 OSL install deps script: set STOP_ON_WARNING to OFF to disable -Werror. 2012-12-11 08:13:56 +00:00
c2405353b8 Make installation of some libs off by default (use --with-all option to re-enable them). Currently affected libs:
*libspnav
*liblame
*libjack
*libscrhoedinger
*libvpx
*libxvid
2012-12-05 11:58:38 +00:00
b095c31c87 Can't stress how much I hate bash... This should fix a bug with version comparison (at least under fedora, debian looked OK :/ ). 2012-12-04 22:03:39 +00:00
eeece25d82 Add libjeack0 as (Debian and co) dep.
Also add --skip-foo args to command line.
2012-12-03 17:53:01 +00:00
d6a09974e2 Exit when package manager fails (exit status >= 1). 2012-12-03 17:22:52 +00:00
6213c6d69b Add --force-all option to force rebuild of all built libraries. 2012-12-03 13:28:35 +00:00
f00a49baaa Add exhaustive command line options description in --help message... 2012-12-03 12:04:15 +00:00
19e9571b1b Various "user-friendly" edits, mostly adding command-line args parsing... So now you can try to build OSL with just install_deps.sh --with-osl 2012-12-01 18:07:45 +00:00
40e75fd2eb Dependencies Builder: disable LINKSTATIC for OIIO
It'll likely give issues with system boost libraries in ubuntu/debian due
to this distros doesn't like static linking and not building static libs
with -fPIC flag.

Disabling LINKSTATIC should be quite painless since blender requires the
same image libraries as oiio does.
2012-11-29 08:22:02 +00:00
777449029b Seems cmake in debian squeeze is broken and fails to handle BOOST_ROOT
I would recommend using debian-backports repo for cmake
2012-11-28 19:37:37 +00:00
8d4741b501 Dependency builder: reduce amount of needed sudo commands by checking permissions for $INST folder 2012-11-28 13:34:44 +00:00
406d680cee Dependency builder: fixed sources directory not creating in some cases 2012-11-28 13:27:12 +00:00
7503bd59e1 Fix two stupid mistakes... Btw, osl now compiles with Fedora17, once llvm-3.1 has been compiled! ;) 2012-11-21 15:42:12 +00:00
7011d3cfe2 Enable llvm building for fedora too.
Unfortunately, this does not solve OSL compile problem in this distro (still the same errors, looks related to gnu c++... :/).
2012-11-21 13:13:50 +00:00
dba4444cd8 Bring SUSE target to the same level as others.
Also add compile_LLVM func, needed by openSuse (which llvm package is
completly broken), and probably can help for OSL in Fedora17 too (will test soon).
2012-11-21 09:01:49 +00:00
ade96d2840 Update to use new WITH_STATIC_LIBS CMake flag when ALL_STATIC is true. 2012-11-19 20:24:06 +00:00
89bebee459 More tweaks:
* Prevent ocio from building its python binding, we don't use it, and it looks like OCIO's CMakeList is not robust here (i.e. can try to build it even when Python.h is not found :/ [irc report]).
* Do not build ffmpeg's player, server nor doc.
* Give right paths to static extra libs for ffmpeg when ALL_STATIC is true.
2012-11-19 19:11:01 +00:00
7ecbc39610 Basic work for an ALL_STATIC option, to enable when you want to build blender in a portable way. Still WIP! 2012-11-19 11:12:30 +00:00
063ca9b2a6 No boost system when we have own compiled version! 2012-11-19 10:45:03 +00:00
509e178f72 Definitive fix for version_ge with equal versions like "1.0.0" and "1.0".
Also fixed DEB boost version checking, own fault.
And disabled building ocio's apps, else it would go searching for an oiio lib (and we have not yet built ours) - anyway, if users want them, they can build them on their own!
2012-11-19 08:48:21 +00:00
0aadad0896 Partial fix to version_ge (greater or equal), was not working correctly with eaqual versions, now will do with exact same versions at least (yet have to fix case like comparing 1.0 and 1.0.0).
Also refactored a bit osl/llvm/etc. stuff for DEB (so that now all osl-deps are only installed when we do have a valid llvm and want to [try to!] build osl).

And added osl/llvm/etc. code for RPM (osl does not compile under fedora currently, though :/ ).
2012-11-18 20:31:58 +00:00
00c194718a More cleanup/deduplication. Also explicitly using gawk (so system without it should print a much comprehensive error message!).
Note: RPM-related edits not yet tested.
2012-11-18 17:47:26 +00:00
76c901d342 Better handing of llvm version (now we can be sure to use the same for osl and blender - and the latest one available!).
And more cosmetic cleanups...
2012-11-18 17:27:29 +00:00
03f4e7fba4 Fix own stupid mistake for threads count, and edits to user messages (mostly adding the ldconfig trick for dynamic boost libs). 2012-11-18 14:27:19 +00:00
ecb11b43fc Install dependencies: added check for minimal version of x264
Also fixed parsing of package version with epoch
2012-11-17 17:58:15 +00:00
f55b9b6e2f Mono-core platform seem to not output the cores field in /proc/cpuinfo :/
Also adding gawk packages (gnu awk), looks like some distro do not have that one by default!
2012-11-17 14:41:18 +00:00
13ea663590 Install dependencies: workaround for SHA linking issues 2012-11-17 12:59:24 +00:00
fd15b39438 Install dependencies: abort script if compilation of some component failed 2012-11-17 12:10:35 +00:00
eae0174b04 Install dependencies: disable OSL for now
It's really horror even for me to compile it on release environment,
i do not want anybody to spend time trying to support this lib in
automatic script or make it so user's are easily frustrated by some
hack added to OSL repository.

If you REALLY want to build OSL with this script, set BUILD_OSL to
truth (it's in the top of the script).
2012-11-17 11:57:10 +00:00
d00e6dcc3a Install dependencies: dead links should not occur 2012-11-17 11:42:37 +00:00
70308d51f1 Install dependencies: use OIIO 1.1.1 where SHA crap seems to be solved 2012-11-17 11:35:13 +00:00
b20cb61607 Made sure open OIIO does not use system's boost in cases it was compiled from sources 2012-11-17 11:28:12 +00:00
c98be502cd Install dependencies: made it sure llvm-3.1 or llvm-3.0 is installing
llvm-dev could be a meta-package for older version of llvm
2012-11-17 11:23:53 +00:00
38eee0104b quiet scons deprecation warnings and correct --with_filesystem --> --with-filesystem in install_deps.sh 2012-11-17 05:16:54 +00:00
abc122205a More fixes and cleanup...
Now OSL should work for DEB-like systems with CMake (not yet tested with scones, nor fedora).
Fedora version-checking bug should be fixed.
Also simplified a bit compile_FOO funcs code.
2012-11-16 17:14:01 +00:00
366b60c6cb First atempt to add OSL.
DEB only for now: installs needed deps (LLVM & co), downloads OSL source and compiles the lib. However, blender linking fails currently... :/
2012-11-16 12:42:01 +00:00
7d6417bbb3 Another nuch of fixes/improvements to install_deps script, among which:
*New $INST variable to easily change the installation root dir of compiled libs.
*Better handling of versions for debian (DEB) too (and fix a bug for fedora (RPM) ones).
*Enhancements/fixes to compile_FOO funcs:
**Most notable, we now can force a recompile when we change something into these funcs, so user will always have latest-instructions compiled libs (else, he would have have to manually remove lib dirs under $INST...)
*General naming cleanup inside script (still wip).

Also adding boost date_time lib to linux in cmake file (why wasn't it there???).
2012-11-15 17:31:18 +00:00
c3ce2bbfdf looks like we need those libs as well to compile with static ffmpeg on fedora (by why in hell librt???)... 2012-11-14 23:20:16 +00:00
67f0a4b424 Fixes, mostly for RPM (tested on fedora17):
*Better handling of optional libs for ffmpeg, and is now able to check and give user additional link libs for ffmpeg.
*Added two helpers (only used by RPM for now) to:
**check whether a version number is greater or equal than another one, and...
**check whether a version number is "included" into another one (eg 3.3.2 is included into more general 3.3).
*Added date-time as target when building our own boost.
*Removed apt-get upgrade action for DEB (let the user decide when he wants to globally upgrade its system!).
2012-11-14 21:57:47 +00:00
95a64ff2da Fixes for scons 2012-11-13 18:12:57 +00:00
4713c30017 Adding an escape for '/' char inside the regex's char classe, looks like it is needed for ubuntu 's awk but not mandatory for debian's awk??? Anyway, does not arm... ;) 2012-11-13 18:04:52 +00:00
a46b1feb77 Add more info to make ffmpeg work "out of the box" for DEB systems:
*For CMake, enable ffmpeg (it is disabled by default...)
*Give the full list a librairies to link.

Tested on Debian for CMake (did not test scons at all for now, anyway). Not yet implemented for RPM/SUSE distribs, but this should not be too hard.
2012-11-13 16:42:36 +00:00
741e167f83 More fixes:
*Unset LANG envar for the script execution time, because commands like "apt-cache policy" will return translated messages, which would not be grep'ed crrectly...
*Disable using distrib's ffmpeg for DEB distribs too, as e.g. official debian features libav under ffmpeg name, which is not that much compatible with current Blender code.
*Also check for libxvidcore-dev .deb package, debian has no libxvidcore4-dev ;)
2012-11-13 10:49:55 +00:00
c382c03ccf Hopefully now suse will just work :) 2012-11-13 10:12:42 +00:00
0b1411046b Install dependencies script: added support of OpenSUSE
Currently it'll install basic packages only and will compile all
python, boost, oiio, ocio and ffmpeg.
2012-11-13 09:29:22 +00:00
d1cd8f5802 fix for boost (symlink was buggy, and better to only build needed boost libs).
Note; we might also want to add the --without-icu option later...
2012-11-13 06:22:47 +00:00
d3c3f07133 Initial implementation of a script for automatic dependencies installer/builder
This script will install all packages from the repositories and will compile
missing in repositories libraries.

It is supposed to replace pre-compiled libraries from our svn.

Tested script on Fedora 14 and 17, Ubuntu 10.04 and 12.10. All the dependencies
and manually built libraries seems to be fine. However, it's really annoying to
build blender in virtual machine to ensure there's no linking errors, i would
hope community will help testing and making needed tweaks to the script :)

To use the script, simple run it from your user name. It'll run installation
commands from a sudo, so you would likely be requested to type a password.

I've made tweaks to CMake FindLibs, so it should find OIIO, OCIO and python
libraries compiled by this script. Boost and FFmpeg would need to be specified
manually.

SCons currently would require manual paths specifications as well. Perhaps we
could make SCons smarter in the future.

All the parameters you need to pass to CMake/SCons would be printed when script
finishes to run.

Pretty much sure it's not production-ready script, but we need to start testing
at some point :)
2012-11-12 19:39:09 +00:00