GNU bug report logs -
#30200
[PATCH 0/2] gnu: Fix bundling in rtags, and change rct to do that.
Previous Next
Reported by: Fis Trivial <ybbs.daans <at> hotmail.com>
Date: Sun, 21 Jan 2018 19:29:02 UTC
Severity: normal
Tags: fixed, patch
Done: ludo <at> gnu.org (Ludovic Courtès)
Bug is archived. No further changes may be made.
Full log
Message #17 received at 30200 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Fis Trivial <ybbs.daans <at> hotmail.com> skribis:
> * gnu/packages/patches/rtags-separate-rct.patch: New file.
> * gnu/packages/code.scm (rtags): Dependencies no longer bundled.
> [source]: Use tar ball release.
> Use the patch to link rct.
> Substitute corresponding headers.
> [native-inputs]: Add new dependencies.
> [inputs]: Likewise.
I slightly tweaked the commit message, but overall it was good. :-)
I applied the changes below, mostly to clarify the patch by removing
lines instead of commenting them out.
Thanks!
Ludo’.
[Message part 2 (text/x-patch, inline)]
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index 5d2d176eb..a26768862 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -27,7 +27,6 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
- #:use-module (guix build utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (gnu packages)
@@ -408,6 +407,7 @@ functionality such as HTML output.")
;; Part of spliting rct with rtags.
;; Substitute #include "rct/header.h" with #include <rct/header.h>.
'(with-directory-excursion "src"
+ (delete-file-recursively "rct") ;remove bundled copy
(let ((files (find-files "." ".*\\.cpp|.*\\.h")))
(substitute* files
(("#include ?\"rct/(.*.h)\"" all header)
diff --git a/gnu/packages/patches/rtags-separate-rct.patch b/gnu/packages/patches/rtags-separate-rct.patch
index b2e496d8c..533e28b02 100644
--- a/gnu/packages/patches/rtags-separate-rct.patch
+++ b/gnu/packages/patches/rtags-separate-rct.patch
@@ -1,92 +1,72 @@
-From: fis <ybbs.daans <at> hotmail.com>
-Date: Sat, 20 Jan 2018 08:55:00 +0800
-Subject: [PATCH] src/CMakelists.txt: Fix include and link rct.
+Unbundle RCT and use our own copy.
----
- src/CMakeLists.txt | 31 +++++++++++++++++--------------
- 1 file changed, 17 insertions(+), 14 deletions(-)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index ff4f11f0..e4838e0a 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -105,12 +105,13 @@ if (LUA_ENABLED)
+--- rtags-2.16/src/CMakeLists.txt 2018-01-23 10:36:17.645855140 +0100
++++ rtags-2.16/src/CMakeLists.txt 2018-01-23 10:38:14.605234740 +0100
+@@ -105,12 +105,6 @@ if (LUA_ENABLED)
CMAKE_ARGS -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=0 -DCMAKE_GENERATOR=${CMAKE_GENERATOR})
endif ()
-
+
-set(RCT_RTTI_ENABLED 1)
-set(RCT_NO_INSTALL 1)
-set(RCT_NO_LIBRARY 1)
-+# set(RCT_RTTI_ENABLED 1)
-+# set(RCT_NO_INSTALL 1)
-+# set(RCT_NO_LIBRARY 1)
-+
- # Everyting which as been set either in rct/rct.cmake or rct/compiler.cmake
- # doesn't need to be set in this file again.
+-# Everyting which as been set either in rct/rct.cmake or rct/compiler.cmake
+-# doesn't need to be set in this file again.
-include(rct/rct.cmake)
-+# include(rct/rct.cmake)
-
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wstrict-aliasing=2 -Wcast-qual -fPIC")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wstrict-aliasing=2 -Wcast-qual -fPIC")
-@@ -128,8 +129,8 @@ add_definitions(
+@@ -128,8 +122,7 @@ add_definitions(
"-DRTAGS_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}"
"-DCLANG_LIBDIR=${LIBCLANG_LIBDIR}"
"-DCLANG_VERSION=${LIBCLANG_VERSION_STRING}"
- "-DOS_${CMAKE_SYSTEM_NAME}"
- ${RCT_DEFINITIONS})
+ "-DOS_${CMAKE_SYSTEM_NAME}")
-+ # ${RCT_DEFINITIONS})
-
+
if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
add_definitions(-D__LONG_LONG_SUPPORTED)
-@@ -172,8 +173,8 @@ set(RTAGS_SOURCES
+@@ -172,8 +165,7 @@ set(RTAGS_SOURCES
Symbol.cpp
SymbolInfoJob.cpp
Token.cpp
- TokensJob.cpp
- ${RCT_SOURCES})
+ TokensJob.cpp)
-+ # ${RCT_SOURCES})
-
+
if (LUA_ENABLED)
list(APPEND RTAGS_SOURCES AST.cpp)
-@@ -195,10 +196,11 @@ endif ()
-
+@@ -195,10 +187,10 @@ endif ()
+
include_directories(
${CMAKE_CURRENT_LIST_DIR}
- ${RCT_INCLUDE_DIRS}
-+ # ${RCT_INCLUDE_DIRS}
${CMAKE_CURRENT_LIST_DIR}/selene/include
${CMAKE_CURRENT_BINARY_DIR}/lua-prefix/src/lua-build
- ${CMAKE_CURRENT_LIST_DIR}/lua/src)
+ ${CMAKE_CURRENT_LIST_DIR}/lua/src
+ ${CMAKE_CURRENT_BINARY_DIR}/include)
-
+
if (CMAKE_SYSTEM_NAME MATCHES "Darwin")
set(START_GROUP "")
-@@ -223,17 +225,18 @@ else ()
+@@ -223,17 +215,17 @@ else ()
endif()
-
+
# RCT_LIBRARIES and stdc++ library must be at the end
-set(RTAGS_LIBRARIES ${RTAGS_LIBRARIES} -lstdc++ ${RCT_LIBRARIES})
-+# set(RTAGS_LIBRARIES ${RTAGS_LIBRARIES} -lstdc++ ${RCT_LIBRARIES})
+set(RTAGS_LIBRARIES ${RTAGS_LIBRARIES} -lstdc++)
add_executable(rc rc.cpp)
-target_link_libraries(rc ${RTAGS_LIBRARIES})
+target_link_libraries(rc ${RTAGS_LIBRARIES} rct)
-
+
add_executable(rdm rdm.cpp)
-target_link_libraries(rdm ${RTAGS_LIBRARIES})
+target_link_libraries(rdm ${RTAGS_LIBRARIES} rct)
-
+
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
-
+
add_executable(rp rp.cpp)
-target_link_libraries(rp ${RTAGS_LIBRARIES})
+target_link_libraries(rp ${RTAGS_LIBRARIES} rct)
-
+
if (CYGWIN)
EnsureLibraries(rdm rct)
---
-2.13.6
-
This bug report was last modified 7 years and 170 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.