From 6eb6f35f24bfacc8324c5f4230bcd2278226b59e Mon Sep 17 00:00:00 2001 From: Melvyn Sopacua Date: Mon, 13 Feb 2017 14:30:48 +0100 Subject: [PATCH] BSD compat: use sys/endian.h if available is a linuxism. On BSD-like systems this is --- nominatim/CMakeLists.txt | 10 +++++++++- nominatim/postgresql.h | 4 ++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/nominatim/CMakeLists.txt b/nominatim/CMakeLists.txt index 53b5073b..726ec4cc 100644 --- a/nominatim/CMakeLists.txt +++ b/nominatim/CMakeLists.txt @@ -1,4 +1,12 @@ add_executable(nominatim export.c geometry.cpp import.c index.c input.c nominatim.c postgresql.c sprompt.c) - +include(CheckIncludeFile) +CHECK_INCLUDE_FILE(byteswap.h HAVE_BYTESWAP_H) +CHECK_INCLUDE_FILE(sys/endian.h HAVE_SYS_ENDIAN_H) +if(HAVE_BYTESWAP_H) + target_compile_definitions(nominatim PRIVATE HAVE_BYTESWAP_H) +endif(HAVE_BYTESWAP_H) +if(HAVE_SYS_ENDIAN_H) + target_compile_definitions(nominatim PRIVATE HAVE_SYS_ENDIAN_H) +endif(HAVE_SYS_ENDIAN_H) target_link_libraries(nominatim ${LIBXML2_LIBRARIES} ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} ${PostgreSQL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) diff --git a/nominatim/postgresql.h b/nominatim/postgresql.h index 6a14e94e..7050fca4 100644 --- a/nominatim/postgresql.h +++ b/nominatim/postgresql.h @@ -7,7 +7,11 @@ #define PG_OID_INT8 20 #define PG_OID_INT4 23 +#if defined(HAVE_BYTESWAP_H) #include +#elif defined(HAVE_SYS_ENDIAN_H) +#include +#endif #if __BYTE_ORDER == __BIG_ENDIAN #define PGint16(x) (x)