StormByte-Config
2.0.0
C++26 configuration-document module of the StormByte suite
Loading...
Searching...
No Matches
visibility.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2024-2026 David C. Manuelda (StormBytePP)
3
*
4
* This file is part of StormByte-Config.
5
*
6
* StormByte-Config original source is dual-licensed:
7
*
8
* 1. GNU Lesser General Public License v3.0 (or later)
9
* You may redistribute and/or modify this file under the terms of the
10
* GNU Lesser General Public License as published by the Free Software
11
* Foundation, either version 3 of the License, or (at your option)
12
* any later version.
13
*
14
* 2. Commercial license
15
* Alternatively, this file may be used under the terms of a commercial
16
* license agreement with the copyright holder
17
* (David C. Manuelda <StormByte@gmail.com>).
18
*
19
* Both licenses apply only to original StormByte-Config source in this
20
* repository. They do not cover other StormByte modules or any third-party
21
* material shipped with this repository (including everything under
22
* thirdparty/, and in particular the bundled StormByte-String tree and
23
* the StormByte Base tree it vendors), which remains under its own license.
24
*
25
* Neither license grants any patent rights. Any patent licenses required
26
* to use this software or third-party components must be obtained separately
27
* from the patent holders.
28
*
29
* StormByte-Config is distributed in the hope that it will be useful,
30
* but WITHOUT ANY WARRANTY; without even the implied warranty of
31
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
32
* GNU Lesser General Public License for more details.
33
*
34
* You should have received a copy of the GNU Lesser General Public License
35
* version 3 along with StormByte-Config. If not, see
36
* <https://www.gnu.org/licenses/lgpl-3.0.html>.
37
*
38
* SPDX-License-Identifier: LGPL-3.0-or-later OR LicenseRef-StormByte-Commercial
39
*/
40
41
#pragma once
42
43
#include <
StormByte/platform.h
>
44
45
#ifdef WINDOWS
46
#ifdef StormByte_Config_EXPORTS
47
#define STORMBYTE_CONFIG_PUBLIC __declspec(dllexport)
48
#define STORMBYTE_CONFIG_INSTANTIATE __declspec(dllexport)
49
#elif defined(STORMBYTE_CONFIG_SHARED)
50
#define STORMBYTE_CONFIG_PUBLIC __declspec(dllimport)
51
#define STORMBYTE_CONFIG_INSTANTIATE
52
#else
53
#define STORMBYTE_CONFIG_PUBLIC
54
#define STORMBYTE_CONFIG_INSTANTIATE
55
#endif
56
#define STORMBYTE_CONFIG_PRIVATE
57
#else
58
#define STORMBYTE_CONFIG_PUBLIC __attribute__((visibility("default")))
59
#define STORMBYTE_CONFIG_PRIVATE __attribute__((visibility("hidden")))
60
#define STORMBYTE_CONFIG_INSTANTIATE
61
#endif
platform.h
lib
public
StormByte
config
visibility.h
Generated by
1.9.8