git-svn-id: svn://db.shs.com.ru/libs@189 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2017-05-16 10:09:22 +00:00
parent e6112cdb96
commit 5316e79152
9 changed files with 368 additions and 99 deletions

View File

@@ -1,16 +1,22 @@
cmake_minimum_required(VERSION 2.6)
project(libs)
set(LIBPROJECT 1)
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/pip/")
if(MINGW)
find_package(MinGW REQUIRED)
endif()
set(LIB 1)
set(LIBPROJECT 1)
set(PULT 1)
set(USB 1)
set(ICU 1)
set(CRYPT 1)
set(FFTW 1)
option(LIB "System install" 1)
option(DEBUG "Build with -g3" 0)
option(QGLVIEW "Build QGLview library and utils" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -Wall")
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
#set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=native")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3")
endif ()
set(PIP_LIBRARY pip)
set(PIP_FOLDERS "." "core" "containers" "thread" "system" "io" "console" "math" "code" "geo")
set(PIP_INCLUDES)
@@ -30,8 +36,6 @@ else ()
message(STATUS "Install to local \"bin\"")
endif ()
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
#set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=native")
foreach(F ${PIP_FOLDERS})
list(APPEND PIP_INCLUDES "${CMAKE_CURRENT_SOURCE_DIR}/pip/src_main/${F}")
endforeach(F)
@@ -46,6 +50,9 @@ set(QAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/qad)
add_subdirectory(pip)
add_subdirectory(qad)
set(_DIRS piqt piqt_utils cd_utils qcd_utils)
if (QGLVIEW)
list(APPEND _DIRS qglview)
endif()
foreach(_D ${_DIRS})
include_directories(${_D})
add_subdirectory(${_D})

View File

@@ -2,17 +2,17 @@ project(cd_utils)
cmake_minimum_required(VERSION 2.6)
if (NOT LIBPROJECT)
find_package(PIP REQUIRED)
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif ()
endif ()
if (MINGW)
find_package(MinGW REQUIRED)
endif()
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${PIP_INCLUDES})
option(LIB "System install" 1)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -Wall")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif ()
#file(GLOB HDRS_UTILS "*.h")
#file(GLOB CPPS_UTILS "*.cpp")
set(CPPS_UTILS "cdutils_core.cpp" "cdutils_types.cpp" "cdutils_parser.cpp" "cdutils_k.cpp")
@@ -27,7 +27,28 @@ target_link_libraries(${PROJECT_NAME} ${PIP_LIBRARY})
add_executable(cdutilstest "cdutilstest.cpp" "cdtest.h")
target_link_libraries(cdutilstest ${PIP_LIBRARY} ${PROJECT_NAME})
if (LIB)
if (LIBPROJECT)
include(SDKMacros)
sdk_install("" "${PROJECT_NAME}" "${HDRS_UTILS}")
else()
if(LIB)
if(WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${HDRS_UTILS} DESTINATION ${MINGW_INCLUDE})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
else()
if(APPLE)
set(CMAKE_INSTALL_PREFIX /usr/local)
else()
set(CMAKE_INSTALL_PREFIX /usr)
endif()
install(FILES ${HDRS_UTILS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
endif()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
else()
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif()
endif ()

View File

@@ -2,6 +2,13 @@ project(piqt)
cmake_minimum_required(VERSION 2.6)
if(NOT LIBPROJECT)
find_package(PIP REQUIRED)
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
if(DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif()
include(QtProject)
endif()
find_package(QAD REQUIRED)
include_directories(${PIP_INCLUDES} ${QAD_INCLUDES})
@@ -9,5 +16,28 @@ set(LIBS ${PIP_LIBRARY} ${QAD_UTILS_LIBRARY})
qt_project(${PROJECT_NAME} "LIB" "${LIBS}" H CPP)
if(LIBPROJECT)
include(SDKMacros)
sdk_install("" "${PROJECT_NAME}" "${H}")
sdk_install("pip" "${PROJECT_NAME}" "${H}")
else()
if(LIB)
if(WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${H} DESTINATION ${MINGW_INCLUDE}/pip)
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR})
else()
if(APPLE)
set(CMAKE_INSTALL_PREFIX /usr/local)
else()
set(CMAKE_INSTALL_PREFIX /usr)
endif()
install(FILES ${H} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/pip)
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
endif()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
else()
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif()
endif()

View File

@@ -1,21 +1,19 @@
project(piqt_utils)
cmake_minimum_required(VERSION 2.6)
if(MINGW)
find_package(MinGW REQUIRED)
endif()
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -Wall")
if(DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif()
if(LIBPROJECT)
include(PIPMacros)
include(SDKMacros)
else()
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
if(DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif()
find_package(PIP REQUIRED)
endif()
find_package(QAD REQUIRED)
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${QT_INCLUDES} ${PIP_INCLUDES} ${QAD_INCLUDES})
pip_code_model(CCM "../pip/src_main/io/piiodevice.h" "../pip/src_main/io/pipacketextractor.h" OPTIONS "-DPIP_EXPORT" "-Es")
set(LIBS ${QAD_WIDGETS_LIBRARY} ${QAD_UTILS_LIBRARY} ${QAD_BLOCKVIEW_LIBRARY} ${PIP_LIBRARY})
@@ -32,9 +30,11 @@ else()
add_library(${PROJECT_NAME} SHARED ${CPPS_UTILS} ${CMOCS_UTILS} ${CUIS_UTILS} ${CCM})
endif()
target_link_libraries(${PROJECT_NAME} ${LIBS})
if (LIBPROJECT)
add_dependencies(piqt_utils pip_cmg)
endif()
if (NOT DEFINED ENV{QNX_HOST})
set(CPPS "pidumper.cpp" "pidumper_main.cpp")
set(MOCS "pidumper.h")
@@ -59,31 +59,38 @@ if (NOT DEFINED ENV{QNX_HOST})
add_executable(piconnectionedit "piconnedit_main.cpp" ${RESS})
target_link_libraries(piconnectionedit ${LIBS} ${PROJECT_NAME})
endif()
set(_TARGETS ${PROJECT_NAME} pidumper piconnectionedit)
sdk_install("" "${TARGETS}" "${HDRS_UTILS}")
#if(LIB)
# if(WIN32)
# set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
# install(FILES ${HDRS_UTILS} DESTINATION ${MINGW_INCLUDE})
# install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
# install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
# get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
# install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR})
# else()
# if(APPLE)
# set(CMAKE_INSTALL_PREFIX /usr/local)
# else()
# set(CMAKE_INSTALL_PREFIX /usr)
# endif()
# install(FILES ${HDRS_UTILS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
# install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
# endif()
# message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
#else()
# install(TARGETS ${PROJECT_NAME} DESTINATION bin)
# message(STATUS "Install to local \"bin\"")
#endif()
#if(NOT DEFINED ENV{QNX_HOST})
# install(TARGETS pidumper DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
# install(TARGETS piconnectionedit DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
#endif()
if (NOT DEFINED ENV{QNX_HOST})
set(_TARGETS pidumper piconnectionedit)
endif()
if (LIBPROJECT)
sdk_install("pip" "${PROJECT_NAME}" "${HDRS_UTILS}")
else()
if(LIB)
if(WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${HDRS_UTILS} DESTINATION ${MINGW_INCLUDE}/pip)
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
install(TARGETS ${_TARGETS} DESTINATION ${MINGW_BIN})
get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR})
else()
if(APPLE)
set(CMAKE_INSTALL_PREFIX /usr/local)
install(TARGETS ${_TARGETS} DESTINATION /usr/local/bin)
else()
set(CMAKE_INSTALL_PREFIX /usr)
install(TARGETS ${_TARGETS} DESTINATION /usr/bin)
endif()
install(FILES ${HDRS_UTILS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/pip)
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
endif()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
else()
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
install(TARGETS ${_TARGETS} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif()
endif()

View File

@@ -1,18 +1,23 @@
project(qad)
cmake_minimum_required(VERSION 2.6)
include(../SDKMacros.cmake)
include(../QtProject.cmake)
if (LIBPROJECT)
include(../SDKMacros.cmake)
include(../QtProject.cmake)
else()
include(QtProject)
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif ()
endif()
find_package(OpenGL REQUIRED)
if (MINGW)
find_package(MinGW REQUIRED)
endif()
#include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${QT_INCLUDES})
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -Wall")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif ()
#set(LIBS ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ${OPENGL_LIBRARIES} qad_widgets qad_utils)
if (NOT LIBPROJECT)
if (LIB)
@@ -34,7 +39,29 @@ set(CMAKES "FindQAD.cmake")
install(FILES ${CMAKES} DESTINATION ${CMAKE_ROOT}/Modules)
macro(qad_install _TARGET _H_FILES)
sdk_install(qad "${_TARGET}" "${_H_FILES}")
if (LIBPROJECT)
sdk_install("qad" "${_TARGET}" "${_H_FILES}")
else()
if (LIB)
if (WIN32)
if (NOT _H_FILES STREQUAL "")
#message("HFILES ${_H_FILES}")
install(FILES ${_H_FILES} DESTINATION ${MINGW_INCLUDE}/qad)
endif()
install(TARGETS ${_TARGET} DESTINATION ${MINGW_LIB})
install(TARGETS ${_TARGET} DESTINATION ${MINGW_BIN})
get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
install(TARGETS ${_TARGET} DESTINATION ${QTDIR})
else ()
if (NOT _H_FILES STREQUAL "")
install(FILES ${_H_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/qad)
endif()
install(TARGETS ${_TARGET} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
endif ()
else ()
install(TARGETS ${_TARGET} DESTINATION bin)
endif ()
endif()
endmacro()
macro(qad_plugin NAME _LIBS)

View File

@@ -2,14 +2,42 @@ project(qcd_utils)
cmake_minimum_required(VERSION 2.6)
if (NOT LIBPROJECT)
find_package(PIP REQUIRED)
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif ()
endif()
find_package(QAD REQUIRED)
include_directories(${PIP_INCLUDES} ${QAD_INCLUDES})
set(LIBS ${PIP_LIBRARY} ${QAD_UTILS_LIBRARY} ${QAD_WIDGETS_LIBRARY} cd_utils piqt)
qt_project(${PROJECT_NAME} "LIB" "${LIBS}" H CPP)
sdk_install("" ${PROJECT_NAME} "${H}")
if (NOT DEFINED ENV{QNX_HOST})
if (PULT)
add_subdirectory(pult)
endif ()
endif ()
add_subdirectory(pult)
if (LIBPROJECT)
sdk_install("" ${PROJECT_NAME} "${H}")
else()
if(LIB)
if(WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${H} DESTINATION ${MINGW_INCLUDE}/pip)
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR})
else()
if(APPLE)
set(CMAKE_INSTALL_PREFIX /usr/local)
else()
set(CMAKE_INSTALL_PREFIX /usr)
endif()
install(FILES ${H} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/pip)
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
endif()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
else()
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif()
endif()

View File

@@ -1,8 +1,22 @@
if (NOT LIBPROJECT)
find_package(PIP REQUIRED)
endif ()
if (MINGW)
find_package(MinGW REQUIRED)
endif()
set(LIBS ${QAD_GRAPHIC_LIBRARY} ${QAD_UTILS_LIBRARY} ${QAD_WIDGETS_LIBRARY} qcd_utils)
qt_project(cd_pult "EXE" "${LIBS}" H CPP)
if(LIB)
if(WIN32)
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
else()
if(APPLE)
install(TARGETS ${PROJECT_NAME} DESTINATION /usr/local/bin)
else()
install(TARGETS ${PROJECT_NAME} DESTINATION /usr/bin)
endif()
endif()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
else()
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif()

View File

@@ -6,14 +6,139 @@
#include "cdutils_core.h"
#include "qcd_core.h"
#include "qcd_kmodel.h"
#include "pifile.h"
using namespace CDUtils;
PIStringList takeMembers(PIString &in) {
int slen = in.length();
int st = -1, bcnt = 0;
PIChar cc;
PIStringList ret;
int rst = -1;
for (int i = 0; i < slen; i++) {
cc = in.at(i);
if (cc == '{') {
if (bcnt == 0) st = i;
bcnt++;
}
if (cc == '}' && st >= 0) {
bcnt--;
if (bcnt == 0) {
in.remove(st, i-st);
return ret;
}
}
if (cc == ';' && bcnt == 1) {
if (rst < 0) rst = st;
ret << in.mid(rst+1, i-rst-1);
rst = i;
}
}
return ret;
}
void parseStruct(PIString &in, CDSection * root, const PIStringList &c_types, PIVector<CDSection> &sections, PIVector<CDType> &enums);
void parseEnum(PIString &in, CDSection * root, const PIStringList &c_types, PIVector<CDSection> &sections, PIVector<CDType> &enums) {
PIString n = in.takeCWord();
//piCout << n;
PIVariantTypes::Enum e;
e.enum_name = n;
PIString ev = in.inBrackets('{', '}');
e << ev.split(",");
if (root) {
CDType & cdt((*root)[root->count(false)]);
cdt = CDType(cdt.index(), n, "e", "", "", "", CDType::cdK);
cdt.setEnumValues(e);
enums << cdt;
} else {
enums << CDType(0, n, "e", "", "", "", CDType::cdK);
enums.back().setEnumValues(e);
}
in.removeAll("{"+in+"}");
}
void parseMember(PIString &in, CDSection * root, const PIStringList &c_types, PIVector<CDSection> &sections, PIVector<CDType> &enums) {
PIString t = in.takeCWord();
if (t == "struct") {
parseStruct(in, root, c_types, sections, enums);
}
if (t == "enum") {
parseEnum(in, root, c_types, sections, enums);
}
if (root) {
if (c_types.contains(t) && root) {
PIString tt = "s";
if (t == "bool") tt = "b";
if (t == "int") tt = "n";
if (t == "double") tt = "f";
CDType & cdt((*root)[root->count(false)]);
cdt = CDType(cdt.index(), in.takeCWord(), tt, "", "", "", CDType::cdK);
}
piForeach(CDSection cd, sections) {
if (t == cd.name) {
cd.alias = in.takeCWord();
root->section(root->sectionsCount()) = cd;
}
}
piForeach(CDType en, enums) {
if (t == en.name()) {
in.takeCWord();
(*root)[root->count(false)] = en;
}
}
}
}
void parseStruct(PIString &in, CDSection * root, const PIStringList &c_types, PIVector<CDSection> &sections, PIVector<CDType> &enums) {
PIString t = in.takeCWord();
CDSection * c;
if (root) c = &(root->section(root->sectionsCount()));
else c = new CDSection();
c->name = t;
c->alias = t;
PIStringList members = takeMembers(in);
//piCout << members;
piForeach(PIString &s, members) {
if (s.trim().isEmpty()) continue;
parseMember(s, c, c_types, sections, enums);
}
sections << *c;
}
Form::Form(QWidget *parent) : QWidget(parent), ui(new Ui::Form) {
//CDCore::instance()->initPult();
ui->setupUi(this);
ui->treeView->setKFile("");
PIFile f;
piCout << f.open("test.kh", PIIODevice::ReadOnly);
PIStringList c_types;
c_types << "bool" << "int" << "double" << "string" << "PIString";
PIString in;
while (!f.isEnd()) {
PIStringList s = f.readLine().trim().split("//");
if (!s.isEmpty())
in += s[0];
}
PIVector<CDSection> sections;
PIVector<CDType> enums;
int i=0;
while (!in.isEmpty() && i<100) {
if (!in[0].isAlpha()) in.takeSymbol();
parseMember(in, 0, c_types, sections, enums);
i++;
}
piForeach(CDSection cd, sections) {
if (cd.name == "K") K.root() = cd;
}
ui->treeView->refresh();
}

View File

@@ -1,17 +1,21 @@
project(qglview)
cmake_minimum_required(VERSION 2.6)
find_package(Qt4 REQUIRED)
find_package(OpenGL REQUIRED)
if (IBPROJECT)
include(SDKMacros)
else()
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif ()
endif ()
if (MINGW)
find_package(MinGW REQUIRED)
endif()
find_package(Qt4 REQUIRED)
find_package(OpenGL REQUIRED)
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${QT_INCLUDES})
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -Wall")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif ()
set(LIBS ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ${QT_QTXML_LIBRARY} ${OPENGL_LIBRARIES} qad_widgets qad_utils)
file(GLOB MOCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
file(GLOB CPPS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.cpp")
@@ -25,28 +29,34 @@ qt4_wrap_ui(CUIS ${UIS})
qt4_add_resources(CRES ${RES})
add_library(${PROJECT_NAME} SHARED ${CPPS} ${CMOCS} ${CUIS} ${CRES} ${MOCS})
target_link_libraries(${PROJECT_NAME} ${LIBS})
if (LIB)
if (WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${MOCS} DESTINATION ${MINGW_INCLUDE})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR})
if (LIBPROJECT)
sdk_install("qglview" "${PROJECT_NAME}" "${MOCS}")
else()
if (LIB)
if (WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${MOCS} DESTINATION ${MINGW_INCLUDE}/qglview)
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR})
else ()
if(APPLE)
set(CMAKE_INSTALL_PREFIX /usr/local)
else()
set(CMAKE_INSTALL_PREFIX /usr)
endif()
install(FILES ${MOCS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/qglview)
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
endif ()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
else ()
if(APPLE)
set(CMAKE_INSTALL_PREFIX /usr/local)
else()
set(CMAKE_INSTALL_PREFIX /usr)
endif()
install(FILES ${MOCS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif ()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
else ()
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif ()
qt4_wrap_cpp(CMOCS_TEST "qglview_window.h" OPTIONS -nw)
qt4_wrap_ui(CUIS_TEST "qglview_window.ui")
add_executable(qglview_test "main.cpp" "qglview_window.cpp" ${CMOCS_TEST} ${CUIS_TEST} ${CRES})