Bug #525
Cmakelists.txt lines 801-804 need to be removed or commented
100%
Description
Lines 801-804 need to be removed from cmakelists.txt before the release of the next beta because It creates a FTBFS (fail to build from source)
801: IF (NOT APPLE)
802: SET (DENG_ARCH_SPECIFIC_SOURCES ${DENG_ARCH_SPECIFIC_SOURCES}
803: ${CMAKE_SOURCE_DIR}/engine/portable/src/sys_sdl_window.c)
804: ENDIF (NOT APPLE)
They are not required to compile Deng in linux.
This is the paragraph the lines sit in
IF (UNIX)
IF (NOT WIN32)
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/engine/unix/include )
SET (DENG_ARCH_SPECIFIC_SOURCES
${CMAKE_SOURCE_DIR}/engine/unix/src/dd_uinit.c
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_console.c
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_dylib.c
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_findfile.c
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_input.c
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_mixer.c
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_path.c
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_sfxd_loader.c
${LZSS_SOURCES})
IF (NOT APPLE)
SET (DENG_ARCH_SPECIFIC_SOURCES ${DENG_ARCH_SPECIFIC_SOURCES}
${CMAKE_SOURCE_DIR}/engine/portable/src/sys_sdl_window.c)
ENDIF (NOT APPLE)
ENDIF (NOT WIN32)
ENDIF (UNIX)
As you can see it will not effect any other os's except *nix in which it is not needed anyway.
Labels: Build System
History
#1 Updated by jon13 over 16 years ago
Logged In: YES
user_id=998523
Originator: NO
I can confirm that doomsday does now actually build with this change on Linux at least.
#2 Updated by yagisan over 16 years ago
Logged In: YES
user_id=1248824
Originator: NO
interesting. I fixed it like this in my copy.
yagisan@doomguy:~/opensource/deng/trunk/doomsday$ svn diff CMakeLists.txt
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (revision 5840)
++ CMakeLists.txt (working copy)@ -798,10 +798,10
@
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_path.c
${CMAKE_SOURCE_DIR}/engine/unix/src/sys_sfxd_loader.c
${LZSS_SOURCES})
- IF (NOT APPLE)
- SET (DENG_ARCH_SPECIFIC_SOURCES ${DENG_ARCH_SPECIFIC_SOURCES}
- ${CMAKE_SOURCE_DIR}/engine/unix/src/sys_window.c)
- ENDIF (NOT APPLE)
# IF (NOT APPLE)
# SET (DENG_ARCH_SPECIFIC_SOURCES ${DENG_ARCH_SPECIFIC_SOURCES}
# ${CMAKE_SOURCE_DIR}/engine/unix/src/sys_window.c)
+# ENDIF (NOT APPLE)
ENDIF (NOT WIN32)
ENDIF (UNIX)
So to me it looks pretty clear that sys_window.c and sys_sdl_window.c conflict.
When I get some time, I'll compare the two of them, and see if I can offer an ex-developers opinion on which would be the better one to remove.
#3 Updated by eunbolt over 16 years ago
Logged In: YES
user_id=1615411
Originator: YES
Skyjake
what was this that you added into cmakelists.txt?
<<<<<<< .mine
# IF (NOT APPLE)
# SET (DENG_ARCH_SPECIFIC_SOURCES ${DENG_ARCH_SPECIFIC_SOURCES}
# ${CMAKE_SOURCE_DIR}/engine/portable/src/sys_sdl_window.c)
# ENDIF (NOT APPLE)
=======
#IF (NOT APPLE)
# SET (DENG_ARCH_SPECIFIC_SOURCES ${DENG_ARCH_SPECIFIC_SOURCES}
# ${CMAKE_SOURCE_DIR}/engine/unix/src/sys_window.c)
#ENDIF (NOT APPLE)
.r5843
It causes a cmake to fail
I fixed it by commenting out the:
<<<<<<< .mine =======
.r5843
#4 Updated by skyjake over 16 years ago
Logged In: YES
user_id=717323
Originator: NO
That is just an svn conflict. I committed a version that had the lines commented out, while you had edited the same lines already. If you don't have other changes in the file I recommend you revert it to the latest svn version.