--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/CMakeLists.txt Thu Aug 22 20:24:16 2013 +0300 @@ -0,0 +1,124 @@ +####################################################################################### +# The original ldforge.pro was once generated by qmake (2.01a) Sat Sep 22 17:29:49 2012 +# That shalt be the official birthday of LDForge. +####################################################################################### + +project (ldforge) +cmake_minimum_required (VERSION 2.8.6) + +include(cmake/CheckCXX11Features.cmake) + +include_directories (${CMAKE_BINARY_DIR}/src) +include_directories (${CMAKE_BINARY_DIR}) + +# C++11 stuff from http://pageant.ghulbus.eu/?p=664 +# GCC specifics +if(CMAKE_COMPILER_IS_GNUCXX) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -std=c++0x") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -ggdb") +endif() +# Visual Studio specifics +if(MSVC) + # Warning Level 4 for Debug builds + list(APPEND CMAKE_CXX_FLAGS_DEBUG " /W4") + list(REMOVE_DUPLICATES CMAKE_CXX_FLAGS_DEBUG) +endif() + +find_package (OpenGL REQUIRED) + +if (NOT QT5) + find_package (Qt4 REQUIRED) +else() + find_package (Qt5 REQUIRED) +endif() + +set (QT_USE_QTOPENGL true) +set (QT_USE_QTNETWORK true) + +# grep -l Q_OBJECT src/*.h +set (LDFORGE_MOC_INPUT + src/addObjectDialog.h + src/colorSelectDialog.h + src/configDialog.h + src/dialogs.h + src/download.h + src/file.h + src/gldraw.h + src/gui.h + src/messagelog.h + src/primitives.h + src/widgets.h +) + +set (LDFORGE_FORMS + src/ui/about.ui + src/ui/addhistoryline.ui + src/ui/colorsel.ui + src/ui/config.ui + src/ui/coverer.ui + src/ui/downloadfrom.ui + src/ui/edger2.ui + src/ui/editraw.ui + src/ui/extprogpath.ui + src/ui/flip.ui + src/ui/intersector.ui + src/ui/isecalc.ui + src/ui/ldforge.ui + src/ui/ldrawpath.ui + src/ui/makeprim.ui + src/ui/newpart.ui + src/ui/openprogress.ui + src/ui/overlay.ui + src/ui/rectifier.ui + src/ui/replcoords.ui + src/ui/rotpoint.ui + src/ui/ytruder.ui +) + +set (LDFORGE_SOURCES + src/addObjectDialog.cpp + src/colors.cpp + src/colorSelectDialog.cpp + src/config.cpp + src/configDialog.cpp + src/dialogs.cpp + src/docs.cpp + src/download.cpp + src/extprogs.cpp + src/file.cpp + src/gldraw.cpp + src/gui_actions.cpp + src/gui.cpp + src/gui_editactions.cpp + src/history.cpp + src/ldconfig.cpp + src/ldtypes.cpp + src/main.cpp + src/messagelog.cpp + src/misc.cpp + src/primitives.cpp + src/types.cpp + src/widgets.cpp +) + +set (LDFORGE_QRC ldforge.qrc) +set (LDFORGE_RC ldforge.rc) + +if (NOT QT5) + qt4_wrap_cpp (LDFORGE_MOC ${LDFORGE_MOC_INPUT}) + qt4_wrap_ui (LDFORGE_XFORMS ${LDFORGE_FORMS}) + qt4_add_resources (LDFORGE_XQRC ${LDFORGE_QRC}) +else() + qt5_wrap_cpp (LDFORGE_MOC ${LDFORGE_MOC_INPUT}) + qt5_wrap_ui (LDFORGE_XFORMS ${LDFORGE_FORMS}) + qt5_add_resources (LDFORGE_XQRC ${LDFORGE_QRC}) +endif() + +include (${QT_USE_FILE}) +add_definitions (${QT_DEFINITIONS}) +add_executable (ldforge ${LDFORGE_SOURCES} ${LDFORGE_XFORMS} ${LDFORGE_XQRC}) +target_link_libraries (ldforge + ${QT_LIBRARIES} + GL + GLU +) \ No newline at end of file