Skip to content

Commit 4218403

Browse files
committed
cmake: use target-specific compile definitions
We set up some compile definitions as part of our src/CMakeLists.txt. While the definitions are global, we really only need them as part of the git2internal target which compiles all the objects. Let's thus use `target_compile_definitions` instead of `add_definitions`.
1 parent 53911ed commit 4218403

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/CMakeLists.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,19 +41,19 @@ CHECK_PROTOTYPE_DEFINITION(qsort_r
4141
"void qsort_r(void *base, size_t nmemb, size_t size, void *thunk, int (*compar)(void *, const void *, const void *))"
4242
"" "stdlib.h" HAVE_QSORT_R_BSD)
4343
IF (HAVE_QSORT_R_BSD)
44-
ADD_DEFINITIONS(-DHAVE_QSORT_R_BSD)
44+
target_compile_definitions(git2internal PRIVATE HAVE_QSORT_R_BSD)
4545
ENDIF()
4646

4747
CHECK_PROTOTYPE_DEFINITION(qsort_r
4848
"void qsort_r(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *, void *), void *arg)"
4949
"" "stdlib.h" HAVE_QSORT_R_GNU)
5050
IF (HAVE_QSORT_R_GNU)
51-
ADD_DEFINITIONS(-DHAVE_QSORT_R_GNU)
51+
target_compile_definitions(git2internal PRIVATE HAVE_QSORT_R_GNU)
5252
ENDIF()
5353

5454
CHECK_FUNCTION_EXISTS(qsort_s HAVE_QSORT_S)
5555
IF (HAVE_QSORT_S)
56-
ADD_DEFINITIONS(-DHAVE_QSORT_S)
56+
target_compile_definitions(git2internal PRIVATE HAVE_QSORT_S)
5757
ENDIF ()
5858

5959
# Find required dependencies
@@ -273,7 +273,7 @@ ELSEIF (HAVE_STRUCT_STAT_ST_MTIME_NSEC)
273273
SET(GIT_USE_STAT_MTIME_NSEC 1)
274274
ENDIF()
275275

276-
ADD_DEFINITIONS(-D_FILE_OFFSET_BITS=64)
276+
target_compile_definitions(git2internal PRIVATE _FILE_OFFSET_BITS=64)
277277

278278
# Collect sourcefiles
279279
file(GLOB SRC_H
@@ -291,15 +291,15 @@ if(WIN32 AND NOT CYGWIN)
291291
list(SORT SRC_OS)
292292
target_sources(git2internal PRIVATE ${SRC_OS})
293293
elseif(AMIGA)
294-
add_definitions(-DNO_ADDRINFO -DNO_READDIR_R -DNO_MMAP)
294+
target_compile_definitions(git2internal PRIVATE NO_ADDRINFO NO_READDIR_R NO_MMAP)
295295
else()
296296
file(GLOB SRC_OS unix/*.c unix/*.h)
297297
list(SORT SRC_OS)
298298
target_sources(git2internal PRIVATE ${SRC_OS})
299299
endif()
300300

301301
IF (USE_LEAK_CHECKER STREQUAL "valgrind")
302-
ADD_DEFINITIONS(-DVALGRIND)
302+
target_compile_definitions(git2internal PRIVATE VALGRIND)
303303
ENDIF()
304304

305305
file(GLOB SRC_GIT2 *.c *.h
@@ -374,7 +374,7 @@ if(SONAME)
374374
set_target_properties(git2 PROPERTIES VERSION ${libgit2_VERSION})
375375
set_target_properties(git2 PROPERTIES SOVERSION "${libgit2_VERSION_MAJOR}.${libgit2_VERSION_MINOR}")
376376
if(LIBGIT2_FILENAME)
377-
add_definitions(-DLIBGIT2_FILENAME=\"${LIBGIT2_FILENAME}\")
377+
target_compile_definitions(git2internal PRIVATE LIBGIT2_FILENAME=\"${LIBGIT2_FILENAME}\")
378378
set_target_properties(git2 PROPERTIES OUTPUT_NAME ${LIBGIT2_FILENAME})
379379
elseif(DEFINED LIBGIT2_PREFIX)
380380
set_target_properties(git2 PROPERTIES PREFIX "${LIBGIT2_PREFIX}")

0 commit comments

Comments
 (0)