/CMakeLists.txt (ae95e0b17ec4fb62599167757adbd8cdd08469e7) (2232 bytes) (mode 100644) (type blob)
cmake_minimum_required(VERSION 3.5)
project(JEN
DESCRIPTION "Rendering engine and compute framework"
VERSION 0.2.1
LANGUAGES CXX
)
set(JEN_VERSION_MAJOR ${PROJECT_VERSION_MAJOR} PARENT_SCOPE)
set(JEN_VERSION_MINOR ${PROJECT_VERSION_MINOR} PARENT_SCOPE)
set(JEN_VERSION_PATCH ${PROJECT_VERSION_PATCH} PARENT_SCOPE)
set(JEN_VERSION ${PROJECT_VERSION} PARENT_SCOPE)
set(JEN_NAME ${PROJECT_NAME} PARENT_SCOPE)
set(JEN_DESCRIPTION ${PROJECT_DESCRIPTION} PARENT_SCOPE)
find_package(glfw3 3.2.1 REQUIRED)
find_package(Vulkan REQUIRED)
option(JEN_NATIVE "Enable non-portable compiling optimizations" ON)
set(JRF_NATIVE ${JEN_NATIVE} CACHE BOOL "Same as JEN_NATIVE" FORCE)
set(JLIB_NATIVE ${JEN_NATIVE} CACHE BOOL "Same as JEN_NATIVE" FORCE)
add_subdirectory(libs/simdcpp)
add_subdirectory(libs/math)
add_subdirectory(libs/jlib)
set(JRF_SKIP_PACKAGE_JLIB-0.4 ON CACHE BOOL
"Skip find_package(jlib 0.4 REQUIRED) in jrf subdirectory")
add_subdirectory(libs/jrf)
add_subdirectory(libs/atlas)
add_subdirectory(libs/vkw)
set(JEN_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/include)
add_subdirectory(src)
function(yes_or_no OPT)
if(${OPT})
message(STATUS "${OPT} is set to yes")
set(${OPT} YES PARENT_SCOPE)
else()
message(STATUS "${OPT} is set to no")
set(${OPT} NO PARENT_SCOPE)
endif()
endfunction()
option(JEN_DOXYGEN_HTML "Generate HTML Doxygen documentation")
option(JEN_DOXYGEN_LATEX "Generate LATEX Doxygen documentation")
if(JEN_DOXYGEN_HTML OR JEN_DOXYGEN_LATEX)
find_package(Doxygen)
if (DOXYGEN_FOUND)
set(DOXYGEN_INPUT ${JEN_INCLUDE_DIR}/jen)
set(DOXYGEN_OUTPUT ${CMAKE_BINARY_DIR}/doc)
set(DOXYGEN_CONFIG ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile)
yes_or_no(JEN_DOXYGEN_HTML)
yes_or_no(JEN_DOXYGEN_LATEX)
message(STATUS "Configuring ${DOXYGEN_CONFIG}")
configure_file(${DOXYGEN_CONFIG}.in ${DOXYGEN_CONFIG})
add_custom_target(documentation
COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_CONFIG}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMENT "Generating Doxygen documentation"
VERBATIM)
else(DOXYGEN_FOUND)
message(FATAL_ERROR "Doxygen is not found")
endif(DOXYGEN_FOUND)
endif()
Mode |
Type |
Size |
Ref |
File |
100755 |
blob |
210 |
ba75eadea407b92d2fd9f20d1d4b25e277f2f386 |
.gitignore |
100755 |
blob |
709 |
d3ad60be6046266ecf21c253e8c1aea60c7ff18a |
.gitmodules |
100644 |
blob |
2232 |
ae95e0b17ec4fb62599167757adbd8cdd08469e7 |
CMakeLists.txt |
100644 |
blob |
35149 |
f288702d2fa16d3cdf0035b15a9fcbc552cd88e7 |
COPYING |
100644 |
blob |
602 |
6879e17fdb556c2af39d69f3459c4cf9cca022ef |
Doxyfile.in |
100644 |
blob |
3416 |
2adde71102662433db54d872c09984146934285d |
README |
040000 |
tree |
- |
299bee388182203e7a326ad1d1889b94975aa7a8 |
include |
040000 |
tree |
- |
32329fcb670ac11c2935133d8fc8d54086f70a27 |
libs |
040000 |
tree |
- |
14b9482b1faf2233d9c122d52365a0bd8ea43bb7 |
src |
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"
Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/Jackalope/jen
Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/Jackalope/jen
Clone this repository using git:
git clone git://git.rocketgit.com/user/Jackalope/jen
You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a
merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main