// Copyright (c) 2025-2026 Rocky Software Inc.
// All rights reserved.
//
// This file is part of the RockyGuard library and is distributed under
// the terms of the RockyGuard Library Software License Agreement. See
// docs/RockyGuard_License_Agreement.pdf in the distribution.
//
// No part of this file may be copied, modified, or distributed except
// as expressly permitted by the license agreement.

#pragma once

#if defined(_WIN32) || defined(_WIN64)
    #ifdef ROCKYGUARD_EXPORTS
        #define ROCKYGUARD_API __declspec(dllexport)
    #elif defined(ROCKYGUARD_SHARED_LIB)
        #define ROCKYGUARD_API __declspec(dllimport)
    #else
        #define ROCKYGUARD_API
    #endif
#else
    #if defined(ROCKYGUARD_EXPORTS)
        #define ROCKYGUARD_API __attribute__((visibility("default")))
    #else
        #define ROCKYGUARD_API
    #endif
#endif
