diff --git a/src/main.cpp b/src/main.cpp index dcbbdb60..f3743ac6 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -380,17 +380,10 @@ static SignalHandler s_signal_handler; // // Program entrance // -#ifndef PIPY_SHARED -int main(int argc, char *argv[]) { -#else -#ifdef _WIN32 - #define PIPY_API __declspec(dllexport) -#else - #define PIPY_API -#endif -extern "C" PIPY_API int pipy_main(int argc, char *argv[]) { -#endif +extern "C" PIPY_API +int pipy_main(int argc, char *argv[]) { + int exit_code = 0; try { @@ -689,3 +682,11 @@ extern "C" PIPY_API int pipy_main(int argc, char *argv[]) { return exit_code; } + +#ifndef PIPY_SHARED + +int main(int argc, char *argv[]) { + return pipy_main(argc, argv); +} + +#endif // !PIPY_SHARED diff --git a/src/os-platform.hpp b/src/os-platform.hpp index d7d3442b..56389d6c 100644 --- a/src/os-platform.hpp +++ b/src/os-platform.hpp @@ -40,6 +40,8 @@ auto process_id() -> int; #ifdef _WIN32 +#define PIPY_API __declspec(dllexport) + #include #include @@ -103,6 +105,8 @@ auto get_last_error() -> std::string; #else // !_WIN32 +#define PIPY_API + #include #include #include