Fix gtest linking on ubuntu and do minor cleanup.
authorAntony Riakiotakis <kalast@gmail.com>
Thu, 8 Jan 2015 16:17:40 +0000 (17:17 +0100)
committerAntony Riakiotakis <kalast@gmail.com>
Thu, 8 Jan 2015 16:17:40 +0000 (17:17 +0100)
Generally for build systems, libraries that do not depend on other
libraries, such as system libraries, OpenGL etc always go at the end.

We could even get rid of some duplicate dependency libraries here but
auto duplication by build systems and differences between OSs make this
difficult.

GTest still duplicates all libraries twice to solve some issues which is
weird (maybe libs are not sorted correctly for some reason? needs
investigation)

build_files/cmake/Modules/GTestTesting.cmake
build_files/cmake/macros.cmake

index c8719de64adb5ea14f36779b7d09b38b7c09c22a..fd0379b8f7850371c5f6ad0fd5a0e8ada0ee3add 100644 (file)
@@ -28,7 +28,6 @@ macro(BLENDER_SRC_GTEST NAME SRC EXTRA_LIBS)
 
                add_executable(${NAME}_test ${SRC})
                target_link_libraries(${NAME}_test
-                                     ${PLATFORM_LINKLIBS}
                                      ${EXTRA_LIBS}
                                      bf_testing_main
                                      bf_intern_guardedalloc
index c031df827273ddc2c3f5970f0d3ed5e153a11284..30c761b59bee6338edc93adac59e14448b6f03b3 100644 (file)
@@ -297,7 +297,6 @@ macro(setup_liblinks
        set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}")
 
        target_link_libraries(${target}
-                       ${BLENDER_GL_LIBRARIES}
                        ${PNG_LIBRARIES}
                        ${ZLIB_LIBRARIES}
                        ${FREETYPE_LIBRARY})
@@ -370,14 +369,6 @@ macro(setup_liblinks
                target_link_libraries(${target} ${OPENJPEG_LIBRARIES})
        endif()
        if(WITH_CODEC_FFMPEG)
-
-               # Strange! Without this ffmpeg gives linking errors (on linux),
-               # even though it's linked above.
-               # XXX: Does FFMPEG depend on GLU?
-               if(WITH_GLU)
-                       target_link_libraries(${target} ${OPENGL_glu_LIBRARY})
-               endif()
-
                target_link_libraries(${target} ${FFMPEG_LIBRARIES})
        endif()
        if(WITH_OPENCOLLADA)
@@ -425,13 +416,17 @@ macro(setup_liblinks
                target_link_libraries(${target} ${PTHREADS_LIBRARIES})
        endif()
 
-       target_link_libraries(${target} ${PLATFORM_LINKLIBS} ${CMAKE_DL_LIBS})
-
        # We put CLEW and CUEW here because OPENSUBDIV_LIBRARIES dpeends on them..
        if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
                target_link_libraries(${target} "extern_clew")
                target_link_libraries(${target} "extern_cuew")
        endif()
+
+       #system libraries with no dependencies such as platform link libs or opengl should go last
+       target_link_libraries(${target}
+                       ${BLENDER_GL_LIBRARIES})
+
+       target_link_libraries(${target} ${PLATFORM_LINKLIBS} ${CMAKE_DL_LIBS})
 endmacro()
 
 macro(SETUP_BLENDER_SORTED_LIBS)