ENH: fix it so that the FRAMEWORK property does not break the building of normal shared libs on non-mac platforms
This commit is contained in:
parent
e6b8aa496a
commit
39ccc4fb11
|
@ -1728,7 +1728,12 @@ void cmLocalGenerator
|
|||
// off the per-configuration subdirectory. The link directory
|
||||
// ordering knows how to deal with this.
|
||||
linkItem += tgt->GetDirectory(0, implib);
|
||||
// on apple if the FRAMEWORK prop is set, then
|
||||
// do not add the target full name but just use the directory
|
||||
// name
|
||||
#ifdef __APPLE__
|
||||
if(!tgt->GetPropertyAsBool("FRAMEWORK"))
|
||||
#endif
|
||||
{
|
||||
linkItem += "/";
|
||||
linkItem += tgt->GetFullName(config, implib);
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
project(Framework)
|
||||
add_library(foo SHARED foo.cxx)
|
||||
set_target_properties(foo PROPERTIES
|
||||
FRAMEWORK TRUE
|
||||
FRAMEWORK_PUBLIC_HEADERS "foo.h;foo2.h"
|
||||
FRAMEWORK_VERSION ver2
|
||||
FRAMEWORK_RESOURCES ""
|
||||
# VERSION 1.2
|
||||
FRAMEWORK TRUE
|
||||
FRAMEWORK_PUBLIC_HEADERS "foo.h;foo2.h"
|
||||
FRAMEWORK_VERSION ver2
|
||||
FRAMEWORK_RESOURCES ""
|
||||
)
|
||||
add_executable(bar bar.cxx)
|
||||
target_link_libraries(bar foo)
|
||||
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
void foo();
|
||||
#ifdef _WIN32
|
||||
# define CM_TEST_LIB_IMPORT __declspec( dllimport )
|
||||
#endif
|
||||
CM_TEST_LIB_IMPORT void foo();
|
||||
int main()
|
||||
{
|
||||
foo();
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
#include <stdio.h>
|
||||
|
||||
void foo()
|
||||
#ifdef _WIN32
|
||||
# define CM_TEST_LIB_EXPORT __declspec( dllexport )
|
||||
#endif
|
||||
CM_TEST_LIB_EXPORT void foo()
|
||||
{
|
||||
printf("foo\n");
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue