-
Notifications
You must be signed in to change notification settings - Fork 17
CMake build system template for C++/Qt based projects
License
bhaisaab/cmakeqt
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About ===== CMakeQt, a cross-platform CMake build system template for C++/Qt based projects. Copyright Rohit Yadav <rohit@scaleninja.com>, 2009-2015 Feel free to use and modify it according to your project. For reporting bugs, feature requests and just to say hi, contact the author. WWW === https://github.com/bhaisaab/cmakeqt https://www.ohloh.net/p/cmakeqt History ======= Initially the build system was just for VLMC, but I thought why not make a build system template that anyone can hack easily and use in their own projects, thus CMakeQt! Some projects that use CMakeQt (or parts of source code) ============================== - VLMC: http://git.videolan.org/?p=vlmc.git;a=summary - CernVM Installer: http://cernvm.cern.ch/portal/cernvm-installer - Blender: http://www.blender.org - Phonon-backend-vlc: http://gitorious.org/phonon/phonon-vlc - Tano Player: http://sourceforge.net/projects/tano/ - Graffiti: https://github.com/bhaisaab/graffiti Source ====== Github: http://github.com/bhaisaab/cmakeqt Grab the latest source: git clone git://github.com/bhaisaab/cmakeqt.git Translations ============ Languages that only needed to be shipped can be selected using LANGS, for example: cmake -DLANGS="en;fr" .. To create ts files, either simply do a `make lupdate` or cd to ts/ folder and do: cd ts lupdate ../src/* -ts template.ts Now, send this template to the translators and ask them to rename and send you the file as cmakeqt_<lang-token>.ts; where, lang token can be fr_FR etc. If you add a new language translation, simple add the token to the lang list in ts/CMakeLists.txt For testing I've added a french translation, which is explicitly ran in src/main.cpp Hack hack hack! Building ======== mkdir build && cd build cmake .. && make The binary will be created in <build-folder>/bin Packaging ========= 1. On Linux: make package To force deb: cpack -G DEB To force rom: cpack -G RPM 2. On Mac: (gcc, g++, make, cmake, qt 4.6+ etc. must be installed...) cd contribs sh contribs-mac.sh This will by default create a Mac Bundle, vlmc.app in /build/bin To create a dmg image: Uncomment #dmg in /src/CMakeLists.txt, at the end of the file. and follow the build process, the dmg will be created in /build/bin 3. To cross-compile and package on linux for Windows: (mingw, wine, nsis must be installed...) cd contribs sh contribs.sh cd .. mkdir win32 && cd win32 cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain-win32.cmake -DQT_MOC_EXECUTABLE=../contribs/tools/moc.exe .. make make installer This will create an .exe installer in /win32/bin Distribution via Launchpad ========================== Launchpad.net provides PPA facility for distribution of debian builds. The /debian folder holds debian package building rules. You build and upload your source pkgs by: debuild -k<pgp key ID> debuild -k<pgp key ID> -S -sa # creates only the source pkg dput ppa:<ppa-id>/<pkg> <source.changes> To add/install the pkg, one can do: sudo add-apt-repository ppa:<ppa-id>/<pkg> sudo apt-get update sudo apt-get install <pkg>
About
CMake build system template for C++/Qt based projects
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published