[OpenWalnut-Dev] Source Restructuring
Sebastian Eichelbaum
eichelbaum at informatik.uni-leipzig.de
Fri May 20 20:03:55 CEST 2011
Hi List
I tremendously improved and unified our CMake code. Additionally, I cleaned up the "platformDependent".
What we now have:
* small and quite clean CMake files
* We do not need to have thousands of CMakeFiles anymore.
* everything is handles by some top-level cmake codes.
* it was a real mess guys!
* Automatic handling of QT's moc stuff, shader management and testing/fixtures
* No need to specify tests/moc headers or shader directories anymore
* updated structure in build-dir to allow easy package creation (deb and rpm currently planned)
* many many many small improvements I can not mention here.
Possible Problems:
* Windows: well we had a very huge amount of Visual Studio specific things in our Cmake setup.
* I tried to keep this as best as I could but I can not guarantee that I ported everything in a correct way
* please try at least with MSys/MinGW
* On Mac: maybe the WQtGLWidget and graphicsEngine/WGraphicsWindow and these platform specific things make trouble.
* please try it.
What to do if you have problems:
* ask me!
* do not, I repeati: DO NOT hack around in the Cmake code.
* ask me and we will solve the problem together or write a clean and DOCUMENTED cmake-code
Bye
Sebastian
On Wed, 18 May 2011, Sebastian Eichelbaum wrote:
> Hi List
>
> I began to restructure our source. I moved kernel, common. dataHAndler and graphicsEngine to a directory called "core". The GUI is now in directory qt4gui directly. It USES the core lib and ext. Currently, I changed the CMake scripts to build OW again with this new structure and made the modules to use absolute includes for core and ext stuff: #include "core/kernel/stuff.h" . The next step is to clean our Cmake mess and merge several libs. I'll inform you when its done.
>
> The Goals:
>
> - ONE lib: libOW --> its common, dh, ge and kernel in one lib
> - ONE lib: libOWext --> all the external stuff
> -> has some licence advantages if only linked again OW
> -> after I am done, this will be only Eigen3 since the others (nifti,biosig,eep and so on will be placed inside the loader modules that use them)
> - The GUI is the executable and is linked against libOW. (no libOWqt4gui stuff anymore)
>
> Why:
>
> - Clean structure
> - Modules, GUI and OW core are strictly separated from each other
> -> allows simple external development of modules and alternative "GUI" like server-side script GUIs and similar
> - We can better separate very common and often used modules (marching cubes and this stuff) and very specific research stuff
>
> Possible problems:
>
> - If you added files in your own branches, you might need to move them manually to the core directories
> - I am quite sure that the visual studio might have problems since I might forgot some VS specific things
> - solve this problem by using MSys or even better: use Linux
>
> Bye
> Sebastian
>
> --
> Dipl.-Inf. Sebastian Eichelbaum
> Universität Leipzig
> Institut für Informatik
> Abteilung Bild- und Signalverarbeitung
> PF 100920
> D-04009 Leipzig
> _______________________________________________
> OpenWalnut-Dev mailing list
> OpenWalnut-Dev at lists.informatik.uni-leipzig.de
> http://lists.informatik.uni-leipzig.de/mailman/listinfo/openwalnut-dev
>
--
Dipl.-Inf. Sebastian Eichelbaum
Universität Leipzig
Institut für Informatik
Abteilung Bild- und Signalverarbeitung
PF 100920
D-04009 Leipzig
More information about the OpenWalnut-Dev
mailing list