diff options
Diffstat (limited to 'Tests/Dependency/Case2')
-rw-r--r-- | Tests/Dependency/Case2/CMakeLists.txt | 22 | ||||
-rw-r--r-- | Tests/Dependency/Case2/bar1.c | 4 | ||||
-rw-r--r-- | Tests/Dependency/Case2/bar2.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/bar3.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo1.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo1b.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo1c.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo2.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo2b.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo2c.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo3.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo3b.c | 2 | ||||
-rw-r--r-- | Tests/Dependency/Case2/foo3c.c | 1 | ||||
-rw-r--r-- | Tests/Dependency/Case2/zot.c | 5 |
14 files changed, 52 insertions, 0 deletions
diff --git a/Tests/Dependency/Case2/CMakeLists.txt b/Tests/Dependency/Case2/CMakeLists.txt new file mode 100644 index 000000000..21caaad3e --- /dev/null +++ b/Tests/Dependency/Case2/CMakeLists.txt @@ -0,0 +1,22 @@ +project(CASE2 C) + +add_library(case2Foo1 STATIC foo1.c foo1b.c foo1c.c) +add_library(case2Foo2 STATIC foo2.c foo2b.c foo2c.c) +add_library(case2Foo3 STATIC foo3.c foo3b.c foo3c.c) +target_link_libraries(case2Foo1 case2Foo2) +target_link_libraries(case2Foo2 case2Foo3) +target_link_libraries(case2Foo3 case2Foo1) +set_property(TARGET case2Foo1 PROPERTY LINK_INTERFACE_MULTIPLICITY 3) + +add_library(case2Bar1 STATIC bar1.c) +add_library(case2Bar2 STATIC bar2.c) +add_library(case2Bar3 STATIC bar3.c) +target_link_libraries(case2Bar1 case2Bar2 case2Foo1) +target_link_libraries(case2Bar2 case2Bar3) +target_link_libraries(case2Bar3 case2Bar1) + +add_executable(case2Zot zot.c) +target_link_libraries(case2Zot case2Bar1) + +#set_property(GLOBAL PROPERTY GLOBAL_DEPENDS_DEBUG_MODE 1) +#set(CMAKE_LINK_DEPENDS_DEBUG_MODE 1) diff --git a/Tests/Dependency/Case2/bar1.c b/Tests/Dependency/Case2/bar1.c new file mode 100644 index 000000000..6108fba72 --- /dev/null +++ b/Tests/Dependency/Case2/bar1.c @@ -0,0 +1,4 @@ +extern int foo1(); +extern int bar2(void); +int bar1(void) { return bar2(); } +int bar1_from_bar3(void) { return foo1(); } diff --git a/Tests/Dependency/Case2/bar2.c b/Tests/Dependency/Case2/bar2.c new file mode 100644 index 000000000..b9a236090 --- /dev/null +++ b/Tests/Dependency/Case2/bar2.c @@ -0,0 +1,2 @@ +extern int bar3(void); +int bar2(void) { return bar3(); } diff --git a/Tests/Dependency/Case2/bar3.c b/Tests/Dependency/Case2/bar3.c new file mode 100644 index 000000000..73e85567a --- /dev/null +++ b/Tests/Dependency/Case2/bar3.c @@ -0,0 +1,2 @@ +extern int bar1_from_bar3(void); +int bar3(void) { return bar1_from_bar3(); } diff --git a/Tests/Dependency/Case2/foo1.c b/Tests/Dependency/Case2/foo1.c new file mode 100644 index 000000000..5f1f8ac84 --- /dev/null +++ b/Tests/Dependency/Case2/foo1.c @@ -0,0 +1,2 @@ +extern int foo2(void); +int foo1(void) { return foo2(); } diff --git a/Tests/Dependency/Case2/foo1b.c b/Tests/Dependency/Case2/foo1b.c new file mode 100644 index 000000000..e2b6dc341 --- /dev/null +++ b/Tests/Dependency/Case2/foo1b.c @@ -0,0 +1,2 @@ +extern int foo2b(void); +int foo1b(void) { return foo2b(); } diff --git a/Tests/Dependency/Case2/foo1c.c b/Tests/Dependency/Case2/foo1c.c new file mode 100644 index 000000000..1dcca58c6 --- /dev/null +++ b/Tests/Dependency/Case2/foo1c.c @@ -0,0 +1,2 @@ +extern int foo2c(void); +int foo1c(void) { return foo2c(); } diff --git a/Tests/Dependency/Case2/foo2.c b/Tests/Dependency/Case2/foo2.c new file mode 100644 index 000000000..601923663 --- /dev/null +++ b/Tests/Dependency/Case2/foo2.c @@ -0,0 +1,2 @@ +extern int foo3(void); +int foo2(void) { return foo3(); } diff --git a/Tests/Dependency/Case2/foo2b.c b/Tests/Dependency/Case2/foo2b.c new file mode 100644 index 000000000..34d694411 --- /dev/null +++ b/Tests/Dependency/Case2/foo2b.c @@ -0,0 +1,2 @@ +extern int foo3b(void); +int foo2b(void) { return foo3b(); } diff --git a/Tests/Dependency/Case2/foo2c.c b/Tests/Dependency/Case2/foo2c.c new file mode 100644 index 000000000..dbc54de74 --- /dev/null +++ b/Tests/Dependency/Case2/foo2c.c @@ -0,0 +1,2 @@ +extern int foo3c(void); +int foo2c(void) { return foo3c(); } diff --git a/Tests/Dependency/Case2/foo3.c b/Tests/Dependency/Case2/foo3.c new file mode 100644 index 000000000..dacef6ae4 --- /dev/null +++ b/Tests/Dependency/Case2/foo3.c @@ -0,0 +1,2 @@ +extern int foo1b(void); +int foo3(void) { return foo1b(); } diff --git a/Tests/Dependency/Case2/foo3b.c b/Tests/Dependency/Case2/foo3b.c new file mode 100644 index 000000000..ca25fd8ff --- /dev/null +++ b/Tests/Dependency/Case2/foo3b.c @@ -0,0 +1,2 @@ +extern int foo1c(void); +int foo3b(void) { return foo1c(); } diff --git a/Tests/Dependency/Case2/foo3c.c b/Tests/Dependency/Case2/foo3c.c new file mode 100644 index 000000000..0ad65fe44 --- /dev/null +++ b/Tests/Dependency/Case2/foo3c.c @@ -0,0 +1 @@ +int foo3c(void) { return 0; } diff --git a/Tests/Dependency/Case2/zot.c b/Tests/Dependency/Case2/zot.c new file mode 100644 index 000000000..f25b49343 --- /dev/null +++ b/Tests/Dependency/Case2/zot.c @@ -0,0 +1,5 @@ +extern int bar1(void); +int main(void) +{ + return bar1(); +} |