realXtend / tundra

realXtend Tundra SDK, a 3D virtual world application platform.
www.realxtend.org
Apache License 2.0
84 stars 70 forks source link

TUNDRA_NO_BOOST - make Boost an optional dependency #617

Closed Stinkfist0 closed 11 years ago

Stinkfist0 commented 11 years ago

-re: #595 -rationale: Boost is huge (around 70k files, takes around 2 gigs of disk space) and unneeded - the used features can be found already from the C++ standard library (TR1 and/or C++11) and Qt -windows-build-deps.cmd has USE_BOOST variable that is used to configure whether kNet, AssImp and Ogre use Boost. Ogre uses Intel Thread Building Blocks for threading if USE_BOOST is FALSE -core magic: https://github.com/LudoCraft/Tundra/blob/c1b2103540626c5ac6c9bdae349f4868ecdf5ab7/src/Core/TundraCore/Framework/CoreTypes.h -built, run, and tested on Windows Vista/7/8 (both Boost enabled and disabled) with VC9SP1 and VC10SP1, and on OS X 10.6.8 (Boost enabled) with GCC 4.2.1

TODOs now: 1) Tundra(d).exe freezes mysteriously when the application is shut down. This freeze doesn't occur when running TundraConsole(d).exe. Need to take a look into the ShellInputThread class (converted it from boost::thread to QThread) 2) Add regex validation check to HttpAssetProvider::ParseHttpData And later on: 3) Introduce USE_BOOST variable to Ubuntu and OS x build scripts 4) Consider building TBB instead of using prebuilt package

I would suggest that as a short term plan TUNDRA_NO_BOOST is false by default, as a medium term plan TUNDRA_NO_BOOST would be made TRUE by default, and as a long term plan Tundra should not have a Boost dependency at all and TUNDRA_NO_BOOST configuration could be removed

Stinkfist0 commented 11 years ago

I'm now testing this pull request with VS2008 and with USE_BOOST and TUNDRA_NO_BOOST both set to FALSE. Will report back with the results.

Stinkfist0 commented 11 years ago

I'll push one fix commit soon after which this pull request is guaranteed to work with VS2008 when using Boost as usual (tested on Windows 8 64-bit).

Stinkfist0 commented 11 years ago

FYI, this pull request is already merged to admino_tundra and is there under active testing. Cvetan5 will test in the near future that there are no regressions (when TUNDRA_NO_BOOST is FALSE) on OSX when he has the time

jonnenauha commented 11 years ago

I have ran our branch with VC9 without boost on deps or in tundra. Everything seems to be working normally.

Best regards, Jonne Nauha Meshmoon developer at Adminotech Ltd. www.meshmoon.com

On Tue, Mar 5, 2013 at 3:35 PM, Ali Kämäräinen notifications@github.comwrote:

FYI, this pull request is already merged to admino_tundra and is there under active testing. Cvetan5 will test in the near future that there are no regressions on OSX when he has the time

— Reply to this email directly or view it on GitHubhttps://github.com/realXtend/naali/pull/617#issuecomment-14440032 .

Stinkfist0 commented 11 years ago

Ok, compiles and runs now with GCC and OS X. I cherry-picked accidentally couple commits that I shouln't have but reverted those.

Stinkfist0 commented 11 years ago

Updated pull request description.

cadaver commented 11 years ago

Tested TUNDRA_NO_BOOST=TRUE path on all platforms and fixed some issues in LudoCraft/incoming. Merge will happen in very near future.