branch: externals/hotfuzz
commit 1b54d7a6bec39edeafe73796e82944ff75d243fe
Author: Axel Forsman <[email protected]>
Commit: Axel Forsman <[email protected]>
Stop defaulting to the "RelWithDebInfo" build type
The Nixpkgs build environment i.a. expects CMAKE_BUILD_TYPE to be an
empty string (which would set no optimization flags).
---
.gitignore | 3 +++
CMakeLists.txt | 19 ++++++-------------
README.md | 4 ++--
3 files changed, 11 insertions(+), 15 deletions(-)
diff --git a/.gitignore b/.gitignore
index 53f9fceadb..8c72fedcc6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,5 @@
/.eldev
/Eldev-local
+
+/build
+/hotfuzz-module.so
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bbd5541dff..c2f2710e4d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,17 +1,10 @@
cmake_minimum_required(VERSION 3.19)
project(hotfuzz C)
-if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
- message(STATUS "Setting build type to 'RelWithDebInfo' as none was
specified.")
- set(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE
- STRING "Choose the type of build." FORCE)
-endif()
-
-find_program(EMACS_PROGRAM emacs)
-if(EMACS_PROGRAM)
- get_filename_component(EMACS_PROGRAM ${EMACS_PROGRAM} REALPATH)
- get_filename_component(EMACS_PROGRAM_DIR ${EMACS_PROGRAM} DIRECTORY)
- get_filename_component(EMACS_PROGRAM_DIR ${EMACS_PROGRAM_DIR} DIRECTORY)
+find_program(EMACS_EXECUTABLE emacs)
+if(EMACS_EXECUTABLE)
+ file(REAL_PATH ${EMACS_EXECUTABLE} EMACS_EXECUTABLE)
+ set(EMACS_PROGRAM_DIR ${EMACS_EXECUTABLE}/../..)
endif()
find_path(EMACS_INCLUDE_DIR emacs-module.h
@@ -26,8 +19,8 @@ find_package(Threads REQUIRED)
add_library(hotfuzz-module MODULE hotfuzz-module.c)
set_target_properties(hotfuzz-module PROPERTIES
C_STANDARD 11
- POSITION_INDEPENDENT_CODE ON
+ C_STANDARD_REQUIRED ON
PREFIX ""
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR})
-target_include_directories(hotfuzz-module PRIVATE ${EMACS_INCLUDE_DIR})
+target_include_directories(hotfuzz-module SYSTEM PRIVATE ${EMACS_INCLUDE_DIR})
target_link_libraries(hotfuzz-module PRIVATE Threads::Threads)
diff --git a/README.md b/README.md
index ff09d2bd97..bb7be2dee3 100644
--- a/README.md
+++ b/README.md
@@ -55,8 +55,8 @@ and run
```sh
mkdir build
cd build
-cmake -DCMAKE_C_FLAGS='-O3 -march=native' .. \
- && cmake --build .
+cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS=-march=native .. &&
+ cmake --build .
```
and place the resulting shared library somewhere in `load-path`.