Browse Source

Cleanup the kiface dll export declaration slightly

Why in the bloody world would you pass in the return type as part of the macro for export/import preprocessing
newinvert
Marek Roszko 2 years ago
parent
commit
bd3aca2887
  1. 3
      bitmap2component/CMakeLists.txt
  2. 2
      cvpcb/cvpcb.cpp
  3. 2
      eeschema/eeschema.cpp
  4. 2
      gerbview/gerbview.cpp
  5. 34
      include/import_export.h
  6. 4
      include/kiway.h
  7. 2
      pagelayout_editor/pl_editor.cpp
  8. 2
      pcb_calculator/pcb_calculator.cpp
  9. 2
      pcbnew/pcbnew.cpp

3
bitmap2component/CMakeLists.txt

@ -24,9 +24,6 @@ set( BITMAP2COMPONENT_SRCS
set_source_files_properties( ${CMAKE_SOURCE_DIR}/common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_BM2CMP"
)
set_source_files_properties(bitmap2cmp_frame.cpp PROPERTIES
COMPILE_DEFINITIONS "COMPILING_DLL"
)
if( WIN32 )
if( MINGW )

2
cvpcb/cvpcb.cpp

@ -106,7 +106,7 @@ KIFACE_BASE& Kiface() { return kiface; }
// KIFACE_GETTER's actual spelling is a substitution macro found in kiway.h.
// KIFACE_GETTER will not have name mangling due to declaration in kiway.h.
MY_API( KIFACE* ) KIFACE_GETTER( int* aKIFACEversion, int aKIWAYversion, PGM_BASE* aProgram )
KIFACE_API KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKIWAYversion, PGM_BASE* aProgram )
{
process = (PGM_BASE*) aProgram;
return &kiface;

2
eeschema/eeschema.cpp

@ -347,7 +347,7 @@ KIFACE_BASE& Kiface() { return kiface; }
// KIFACE_GETTER's actual spelling is a substitution macro found in kiway.h.
// KIFACE_GETTER will not have name mangling due to declaration in kiway.h.
MY_API( KIFACE* ) KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
KIFACE_API KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
{
process = aProgram;
return &kiface;

2
gerbview/gerbview.cpp

@ -123,7 +123,7 @@ KIFACE_BASE& Kiface() { return kiface; }
// KIFACE_GETTER's actual spelling is a substitution macro found in kiway.h.
// KIFACE_GETTER will not have name mangling due to declaration in kiway.h.
MY_API( KIFACE* ) KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
KIFACE_API KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
{
process = aProgram;
return &kiface;

34
include/import_export.h

@ -2,7 +2,7 @@
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2011 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
* Copyright (C) 2011 KiCad Developers, see change_log.txt for contributors.
* Copyright (C) 2011-2023 KiCad Developers, see change_log.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -29,32 +29,28 @@
/// See: http://gcc.gnu.org/wiki/Visibility
#if defined(_WIN32)
#define APIEXPORT __declspec(dllexport)
#define APIIMPORT __declspec(dllimport)
#define APILOCAL
#define APIEXPORT __declspec(dllexport)
#define APIIMPORT __declspec(dllimport)
#define APILOCAL
#elif defined(__GNUC__) && __GNUC__ >= 4
// On ELF, we compile with hidden visibility, so unwrap that for specific symbols:
#define APIEXPORT __attribute__ ((visibility("default")))
#define APIIMPORT __attribute__ ((visibility("default")))
#define APILOCAL __attribute__ ((visibility("hidden")))
// On ELF, we compile with hidden visibility, so unwrap that for specific symbols:
#define APIEXPORT __attribute__ ((visibility("default")))
#define APIIMPORT __attribute__ ((visibility("default")))
#define APILOCAL __attribute__ ((visibility("hidden")))
#else
#pragma message ( "warning: a supported C++ compiler is required" )
#define APIEXPORT
#define APIIMPORT
#define APILOCAL
#pragma message ( "warning: a supported C++ compiler is required" )
#define APIEXPORT
#define APIIMPORT
#define APILOCAL
#endif
#if defined(COMPILING_DLL)
// Be sure and define COMPILING_DLL when compiling implementation, and NOT when
// compiling the client.
#define MY_API(rettype) APIEXPORT rettype
#define KIFACE_API APIEXPORT
#else
#define MY_API(rettype) APIIMPORT rettype
#define KIFACE_API APIIMPORT
#endif
#define MY_LOCAL(rettype) APILOCAL rettype
#define KIFACE_LOCAL APILOCAL
#endif // IMPORT_EXPORT_H_

4
include/kiway.h

@ -503,9 +503,9 @@ typedef KIFACE* KIFACE_GETTER_FUNC( int* aKIFACEversion, int aKIWAYversion, PGM_
/// No name mangling. Each KIFACE (DSO/DLL) will implement this once.
extern "C" {
#if defined(BUILD_KIWAY_DLL)
MY_API( KIFACE* ) KIFACE_GETTER( int* aKIFACEversion, int aKIWAYversion, PGM_BASE* aProgram );
KIFACE_API KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKIWAYversion, PGM_BASE* aProgram );
#else
KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKIWAYversion, PGM_BASE* aProgram );
KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKIWAYversion, PGM_BASE* aProgram );
#endif
}

2
pagelayout_editor/pl_editor.cpp

@ -132,7 +132,7 @@ KIFACE_BASE& Kiface() { return kiface; }
// KIFACE_GETTER's actual spelling is a substitution macro found in kiway.h.
// KIFACE_GETTER will not have name mangling due to declaration in kiway.h.
MY_API( KIFACE* ) KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
KIFACE_API KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
{
process = (PGM_BASE*) aProgram;
return &kiface;

2
pcb_calculator/pcb_calculator.cpp

@ -80,7 +80,7 @@ KIFACE_BASE& Kiface() { return kiface; }
// KIFACE_GETTER's actual spelling is a substitution macro found in kiway.h.
// KIFACE_GETTER will not have name mangling due to declaration in kiway.h.
MY_API( KIFACE* ) KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
KIFACE_API KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
{
process = (PGM_BASE*) aProgram;
return &kiface;

2
pcbnew/pcbnew.cpp

@ -343,7 +343,7 @@ KIFACE_BASE& Kiface() { return kiface; }
// KIFACE_GETTER's actual spelling is a substitution macro found in kiway.h.
// KIFACE_GETTER will not have name mangling due to declaration in kiway.h.
MY_API( KIFACE* ) KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
KIFACE_API KIFACE* KIFACE_GETTER( int* aKIFACEversion, int aKiwayVersion, PGM_BASE* aProgram )
{
process = aProgram;
return &kiface;

Loading…
Cancel
Save