Skip to content

Commit 60e42db

Browse files
authored
Merge pull request #167 from gicmo/find_static_nix
LGTM because I was there
2 parents 553760b + 2fd6415 commit 60e42db

File tree

1 file changed

+20
-3
lines changed

1 file changed

+20
-3
lines changed

cmake/FindNIX.cmake

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,16 @@
44
# NIX_INCLUDE_DIRS - The Nix include directories
55
# NIX_LIBRARIES - The libraries needed to use Nix
66

7+
# Support preference of static libs by adjusting CMAKE_FIND_LIBRARY_SUFFIXES
8+
if(NIX_USE_STATIC_LIBS)
9+
set(_nix_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
10+
if(WIN32)
11+
set(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
12+
else()
13+
set(CMAKE_FIND_LIBRARY_SUFFIXES .a)
14+
endif()
15+
endif()
16+
717

818
find_path(NIX_INCLUDE_DIR nix.hpp
919
HINTS /usr/local/include
@@ -19,14 +29,21 @@ find_library(NIX_LIBRARY NAMES nix libnix
1929
/usr/local/lib
2030
/usr/lib)
2131

22-
set(NIX_LIBRARIES ${NIX_LIBRARY} )
23-
set(NIX_INCLUDE_DIRS ${NIX_INCLUDE_DIR} )
32+
set(NIX_LIBRARIES ${NIX_LIBRARY})
33+
set(NIX_INCLUDE_DIRS ${NIX_INCLUDE_DIR})
2434

2535
include(FindPackageHandleStandardArgs)
2636
# handle the QUIETLY and REQUIRED arguments and set NIX_FOUND to TRUE
2737
# if all listed variables are TRUE
2838
find_package_handle_standard_args(Nix DEFAULT_MSG
2939
NIX_LIBRARY NIX_INCLUDE_DIR)
3040

31-
mark_as_advanced(NIX_INCLUDE_DIR NIX_LIBRARY)
41+
mark_as_advanced(NIX_INCLUDE_DIR NIX_LIBRARIES)
42+
43+
if(NIX_USE_STATIC_LIBS)
44+
if(NIX_FOUND)
45+
add_definitions(-DNIX_STATIC=1)
46+
endif()
47+
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_nix_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
48+
endif()
3249

0 commit comments

Comments
 (0)