[PATCH 0/2] Fix build for astyle

  • Done
  • quality assurance status badge
Details
One participant
  • Hartmut Goebel
Owner
unassigned
Submitted by
Hartmut Goebel
Severity
normal
H
H
Hartmut Goebel wrote on 7 Nov 2019 11:16
(address . guix-patches@gnu.org)
20191107101604.3211-1-h.goebel@crazy-compilers.com
- header files have been not been installed
- The Makefile only creates files with a versioned extension (".so.3.1.0").
To make cmake's `find_libarary()` and phase `verify-runpath` happy,
add symlinks for ".so" and ".so.3".

Thus is a revised patchset for http://issues.guix.gnu.org/issue/38090.

Hartmut Goebel (2):
gnu: astyle: Create symlinks for .so files, too.
gnu: astyle: Install header file, too.

gnu/packages/code.scm | 32 +++++++++++++++++++++++++-------
1 file changed, 25 insertions(+), 7 deletions(-)

--
2.21.0
H
H
Hartmut Goebel wrote on 7 Nov 2019 11:18
[PATCH 1/2] gnu: astyle: Create symlinks for .so files, too.
(address . 38098@debbugs.gnu.org)
20191107101810.3284-1-h.goebel@crazy-compilers.com
The Makefile only creates files with a versioned extension (.so.3.1.0),
which are not picked up be cmake's `find_libarary()`. (Instead cmake
picks up the static .a library.)

Symlinks for .so.3 are required to avoid phase `verify-runpath` fails.

* gnu/packages/code.scm(astyle)[argumements]<modules>: New element.
<phases>{install-libs}: Add creating symlinks.
---
gnu/packages/code.scm | 26 ++++++++++++++++++++------
1 file changed, 20 insertions(+), 6 deletions(-)

Toggle diff (53 lines)
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index 512ca5d365..a277434b36 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2019 Hartmut Goebel <h.goebel@goebel-consult.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -599,6 +600,9 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features:
#:make-flags (list (string-append "prefix=" %output)
"INSTALL=install"
"all")
+ #:modules ((guix build gnu-build-system) ;; FIXME use %default-modules
+ (guix build utils)
+ (ice-9 regex))
#:phases
(modify-phases %standard-phases
(replace 'configure
@@ -608,12 +612,22 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features:
;; Libraries are not installed by default
(let* ((output (assoc-ref outputs "out"))
(libdir (string-append output "/lib")))
- (begin
- (mkdir-p libdir)
- (for-each (lambda (l)
- (copy-file
- l (string-append libdir "/" (basename l))))
- (find-files "bin" "lib*"))))
+ (define (make-so-link sofile strip-pattern)
+ (symlink
+ (basename sofile)
+ (regexp-substitute #f
+ (string-match strip-pattern sofile)
+ 'pre)))
+ (mkdir-p libdir)
+ (for-each (lambda (l)
+ (copy-file
+ l (string-append libdir "/" (basename l))))
+ (find-files "bin" "lib*"))
+ (for-each
+ (lambda (sofile)
+ (make-so-link sofile "(\\.[0-9]){3}$") ;; link .so
+ (make-so-link sofile "(\\.[0-9]){2}$")) ;; link .so.3
+ (find-files libdir "lib.*\\.so\\..*")))
#t)))))
(home-page "http://astyle.sourceforge.net/")
(synopsis "Source code indenter, formatter, and beautifier")
--
2.21.0
H
H
Hartmut Goebel wrote on 7 Nov 2019 11:18
[PATCH 2/2] gnu: astyle: Install header file, too.
(address . 38098@debbugs.gnu.org)
20191107101810.3284-2-h.goebel@crazy-compilers.com
* gnu/packages/code.scm(astyle)[arguments]<phases>{install-libs}: Also
install header file.
---
gnu/packages/code.scm | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

Toggle diff (27 lines)
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index a277434b36..ba350b98e5 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -609,8 +609,9 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features:
(lambda _ (chdir "build/gcc") #t))
(add-after 'install 'install-libs
(lambda* (#:key outputs #:allow-other-keys)
- ;; Libraries are not installed by default
+ ;; Libraries and includes are not installed by default
(let* ((output (assoc-ref outputs "out"))
+ (incdir (string-append output "/include"))
(libdir (string-append output "/lib")))
(define (make-so-link sofile strip-pattern)
(symlink
@@ -618,6 +619,9 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features:
(regexp-substitute #f
(string-match strip-pattern sofile)
'pre)))
+ (mkdir-p incdir)
+ (copy-file "../../src/astyle.h"
+ (string-append incdir "/astyle.h"))
(mkdir-p libdir)
(for-each (lambda (l)
(copy-file
--
2.21.0
H
H
Hartmut Goebel wrote on 21 Nov 2019 19:00
Re: bug#38098: Acknowledgement ([PATCH 0/2] Fix build for astyle)
(address . 38098-close@debbugs.gnu.org)
a9555379-8925-c8be-d9bb-e5d3dd719e03@crazy-compilers.com
Pushed as 0c6ab52243353e3417e5a9733bb089e4771cc86e
?
Your comment

This issue is archived.

To comment on this conversation send an email to 38098@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 38098
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch