| /** |
| * \file config.h |
| * \author Radek Krejci <rkrejci@cesnet.cz> |
| * \brief libnetconf2 various configuration settings. |
| * |
| * Copyright (c) 2015 CESNET, z.s.p.o. |
| * |
| * This source code is licensed under BSD 3-Clause License (the "License"). |
| * You may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * https://opensource.org/licenses/BSD-3-Clause |
| */ |
| |
| #ifndef NC_CONFIG_H_ |
| #define NC_CONFIG_H_ |
| |
| /* |
| * Mark all objects as hidden and export only objects explicitly marked to be part of the public API. |
| */ |
| #define API __attribute__((visibility("default"))) |
| |
| #ifdef __GNUC__ |
| # define UNUSED(x) UNUSED_ ## x __attribute__((__unused__)) |
| #else |
| # define UNUSED(x) UNUSED_ ## x |
| #endif |
| |
| /* |
| * Support for spinlocks |
| */ |
| #cmakedefine HAVE_SPINLOCK |
| #ifndef HAVE_SPINLOCK |
| # define pthread_spinlock_t pthread_mutex_t |
| # define pthread_spin_init(s, opt) pthread_mutex_init(s, NULL) |
| # define pthread_spin_lock pthread_mutex_lock |
| # define pthread_spin_trylock pthread_mutex_trylock |
| # define pthread_spin_unlock pthread_mutex_unlock |
| # define pthread_spin_destroy pthread_mutex_destroy |
| #endif |
| |
| /* |
| * support for pthread_mutex_timedlock |
| */ |
| #cmakedefine HAVE_PTHREAD_MUTEX_TIMEDLOCK |
| |
| /* |
| * Location of installed basic YIN/YANG schemas |
| */ |
| #define SCHEMAS_DIR "@CMAKE_INSTALL_PREFIX@/@DATA_INSTALL_DIR@" |
| |
| /* |
| * Partial message read timeout in seconds |
| * (also used as nc_pollsession lock timeout and internal <get-schema> RPC reply timeout) |
| */ |
| #define NC_READ_TIMEOUT @READ_TIMEOUT@ |
| |
| #endif /* NC_CONFIG_H_ */ |