Do you use this cmake option "-DUSER_CMAKE_LD_FLAGS". If yes remove it for the moment.
Edit: thank josephg
@alucryd: Actually I had that answered already
@gregory: I believe that the flag "-DUSER_CMAKE_LD_FLAGS" was not used. You can see the build script, including cmake command line, here in the
PKGBUILD:
Code:
cmake .. -DCMAKE_INSTALL_PREFIX='/usr' -DCMAKE_BUILD_TYPE='Release' -DPACKAGE_MODE='TRUE' -DXDG_STD='TRUE' -DGLSL_API='TRUE' -DREBUILD_SHADER='TRUE' -DPLUGIN_DIR='/usr/lib32/pcsx2' -DGAMEINDEX_DIR='/usr/share/pcsx2' -DGLSL_SHADER_DIR='/usr/share/pcsx2' -DwxWidgets_CONFIG_EXECUTABLE='/usr/bin/wx-config32' -DwxWidgets_wxrc_EXECUTABLE='/usr/bin/wxrc32' -DCMAKE_LIBRARY_PATH='/usr/lib32'
(10-18-2013, 12:33 PM)josephg Wrote: [ -> ]@alucryd: Actually I had that answered already
@gregory: I believe that the flag "-DUSER_CMAKE_LD_FLAGS" was not used. You can see the build script, including cmake command line, here in the PKGBUILD:
Code:
cmake .. -DCMAKE_INSTALL_PREFIX='/usr' -DCMAKE_BUILD_TYPE='Release' -DPACKAGE_MODE='TRUE' -DXDG_STD='TRUE' -DGLSL_API='TRUE' -DREBUILD_SHADER='TRUE' -DPLUGIN_DIR='/usr/lib32/pcsx2' -DGAMEINDEX_DIR='/usr/share/pcsx2' -DGLSL_SHADER_DIR='/usr/share/pcsx2' -DwxWidgets_CONFIG_EXECUTABLE='/usr/bin/wx-config32' -DwxWidgets_wxrc_EXECUTABLE='/usr/bin/wxrc32' -DCMAKE_LIBRARY_PATH='/usr/lib32'
josephg: Wow, sorry about that, didn't notice the new page.
gregory: I indeed don't specify -DUSER_CMAKE_LD_FLAGS manually, but I believe our package builder does it implicitely. I already tried unsetting our LDFLAGS variable which contains those flags, but to no avail. I will try forcing -DUSER_CMAKE_LD_FLAGS='' and report here.
Edit: Confirmed that forcing empty flags, either by emptying the LDFLAGS variable, or using -DUSER_CMAKE_LD_FLAGS='' produces the same error message.
Hum strange, in your previous report there were some linker parameters. Anyway can you try this patch?
Code:
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (revision 5730)
+++ CMakeLists.txt (working copy)
@@ -36,6 +36,9 @@
if(POLICY CMP0018)
cmake_policy(SET CMP0018 OLD)
endif()
+if(POLICY CMP0022)
+ cmake_policy(SET CMP0022 OLD)
+endif()
# Variable to check that people use the good file
set(TOP_CMAKE_WAS_SOURCED TRUE)
(10-19-2013, 10:15 AM)gregory Wrote: [ -> ]Hum strange, in your previous report there were some linker parameters. Anyway can you try this patch?
Code:
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (revision 5730)
+++ CMakeLists.txt (working copy)
@@ -36,6 +36,9 @@
if(POLICY CMP0018)
cmake_policy(SET CMP0018 OLD)
endif()
+if(POLICY CMP0022)
+ cmake_policy(SET CMP0022 OLD)
+endif()
# Variable to check that people use the good file
set(TOP_CMAKE_WAS_SOURCED TRUE)
Strange indeed, I'm positive I don't set those flags, but they're still there. Maybe they're the default flags for CMake or PCSX2?
Anyway, I already tried enforcing the old policy as you do with your patch and it didn't help, it only removed the warnings saying there's a new policy.
what is the error log with the patch?
Well as I mentioned before, only the CMake error remains, several times the following:
Code:
CMake Error:
Error evaluating generator expression:
$<LINK_ONLY:-Wl,-O1,--sort-common,--as-needed,-z,relro>
$<LINK_ONLY> expression requires exactly one parameter.
For what is worth, it seems the issue is related with the invocation of 'target_link_libraries' of Utilities and x86emitter.
Code:
$ grep -R target_link_libraries common/src/ -A3 -B3
common/src/Utilities/CMakeLists.txt-add_library(${Output} STATIC ${UtilitiesSources} ${UtilitiesHeaders} ${UtilitiesSSources})
common/src/Utilities/CMakeLists.txt-
common/src/Utilities/CMakeLists.txt-# link target with wx
common/src/Utilities/CMakeLists.txt:target_link_libraries(${Output} ${wxWidgets_LIBRARIES})
common/src/Utilities/CMakeLists.txt-
common/src/Utilities/CMakeLists.txt-# Gold (new linux linker) does not get automatically dependency of dependency so you must add
common/src/Utilities/CMakeLists.txt-# them manually.
common/src/Utilities/CMakeLists.txt:target_link_libraries(${Output} ${LIBC_LIBRARIES})
common/src/Utilities/CMakeLists.txt-
common/src/Utilities/CMakeLists.txt-# User flags options
common/src/Utilities/CMakeLists.txt-if(NOT USER_CMAKE_LD_FLAGS STREQUAL "")
common/src/Utilities/CMakeLists.txt: target_link_libraries(${Output} "${USER_CMAKE_LD_FLAGS}")
common/src/Utilities/CMakeLists.txt-endif(NOT USER_CMAKE_LD_FLAGS STREQUAL "")
--
common/src/x86emitter/CMakeLists.txt-add_library(${Output} STATIC ${x86emitterSources} ${x86emitterHeaders})
common/src/x86emitter/CMakeLists.txt-
common/src/x86emitter/CMakeLists.txt-# link target with wx
common/src/x86emitter/CMakeLists.txt:target_link_libraries(${Output} ${wxWidgets_LIBRARIES})
common/src/x86emitter/CMakeLists.txt-
common/src/x86emitter/CMakeLists.txt-# User flags options
common/src/x86emitter/CMakeLists.txt-if(NOT USER_CMAKE_LD_FLAGS STREQUAL "")
common/src/x86emitter/CMakeLists.txt: target_link_libraries(${Output} "${USER_CMAKE_LD_FLAGS}")
common/src/x86emitter/CMakeLists.txt-endif(NOT USER_CMAKE_LD_FLAGS STREQUAL "")