Change the behavior of exporting/importing symbols on Windows, so that to fit the new build procedure, i.e. import statically linked opal/orte libraries for other libraries/binaries. There are several use cases when creating dll libraries:
1. create DLL A, export symbols of A, import nothing (A normally is OPAL) should define _USRDLL , A_EXPORT 2. create DLL B, export symbols of B, import A.lib (B could be ORTE, OMPI or other ompi tools) should define _USRDLL, B_EXPORT 3. create DLL C, import B.dll (C could be external libs or apps) should define B_IMPORT This commit was SVN r24016.
Этот коммит содержится в:
родитель
50f8de7ab0
Коммит
482a621e31
@ -86,7 +86,11 @@ typedef struct {
|
||||
# define OMPI_DECLSPEC __declspec(dllexport)
|
||||
# define OMPI_MODULE_DECLSPEC
|
||||
# else
|
||||
# define OMPI_DECLSPEC __declspec(dllimport)
|
||||
# if defined(OMPI_IMPORTS)
|
||||
# define OMPI_DECLSPEC __declspec(dllimport)
|
||||
# else
|
||||
# define OMPI_DECLSPEC
|
||||
# endif /*defined(OMPI_IMPORTS)*/
|
||||
# if defined(OMPI_MODULE_EXPORTS)
|
||||
# define OMPI_MODULE_DECLSPEC __declspec(dllexport)
|
||||
# else
|
||||
|
@ -240,7 +240,11 @@
|
||||
# define OPAL_DECLSPEC __declspec(dllexport)
|
||||
# define OPAL_MODULE_DECLSPEC
|
||||
# else
|
||||
# define OPAL_DECLSPEC
|
||||
# if defined(OPAL_IMPORTS)
|
||||
# define OPAL_DECLSPEC __declspec(dllimport)
|
||||
# else
|
||||
# define OPAL_DECLSPEC
|
||||
# endif /*defined(OPAL_IMPORTS)*/
|
||||
# if defined(OPAL_MODULE_EXPORTS)
|
||||
# define OPAL_MODULE_DECLSPEC __declspec(dllexport)
|
||||
# else
|
||||
|
@ -35,7 +35,11 @@
|
||||
# define ORTE_DECLSPEC __declspec(dllexport)
|
||||
# define ORTE_MODULE_DECLSPEC
|
||||
# else
|
||||
# define ORTE_DECLSPEC __declspec(dllimport)
|
||||
# if defined(ORTE_IMPORTS)
|
||||
# define ORTE_DECLSPEC __declspec(dllimport)
|
||||
# else
|
||||
# define ORTE_DECLSPEC
|
||||
# endif /*defined(ORTE_IMPORTS)*/
|
||||
# if defined(ORTE_MODULE_EXPORTS)
|
||||
# define ORTE_MODULE_DECLSPEC __declspec(dllexport)
|
||||
# else
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user