OpenCores
URL https://opencores.org/ocsvn/lxp32/lxp32/trunk

Subversion Repositories lxp32

[/] [lxp32/] [trunk/] [tools/] [src/] [CMakeLists.txt] - Blame information for rev 9

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 9 ring0_mipt
cmake_minimum_required(VERSION 3.3.0)
2
project(lxp32tools)
3
 
4
# Examine environment
5
 
6
if(CMAKE_C_COMPILER_ID STREQUAL GNU OR CMAKE_C_COMPILER_ID STREQUAL Clang)
7
        set(GNU_SYNTAX TRUE)
8
endif()
9
 
10
# Set default install prefix if not manually set by the user
11
 
12
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
13
        set(CMAKE_INSTALL_PREFIX "${PROJECT_SOURCE_DIR}/../bin" CACHE PATH "Install prefix" FORCE)
14
endif()
15
 
16
message("Install prefix: ${CMAKE_INSTALL_PREFIX}")
17
 
18
# Enable C++11
19
 
20
set(CMAKE_CXX_STANDARD 11)
21
 
22
# Set up warning level for GCC/Clang
23
 
24
if(GNU_SYNTAX)
25
        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pedantic -Wall -Wextra")
26
        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra")
27
endif()
28
 
29
# On Windows, link runtime statically
30
 
31
if(WIN32)
32
        if(GNU_SYNTAX)
33
                set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static")
34
        elseif(MSVC)
35
                foreach(flag_var
36
                        CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE
37
                        CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO
38
                        CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
39
                        CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO
40
                )
41
                        string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
42
                endforeach(flag_var)
43
        endif()
44
endif()
45
 
46
# Build targets
47
 
48
add_subdirectory(lxp32asm)
49
add_subdirectory(lxp32dump)
50
add_subdirectory(wigen)

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.