;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Eric Bavier ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016, 2017 Mathieu Lirzin ;;; Copyright © 2017, 2020, 2021 Mathieu Othacehe ;;; Copyright © 2017, 2019, 2020 Ricardo Wurmus ;;; Copyright © 2018 Clément Lassieur ;;; Copyright © 2022, 2024 Arun Isaac ;;; Copyright © 2023 David Pflug ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;;
aboutsummaryrefslogtreecommitdiff
blob: 5dc91b1919d14fff4d9cdd27d10582f74cb35ab7 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Rename getline() to procmail_getline() to avoid namespace clash with
POSIX getline(). Fixes FTBFS.

Copied from Debian:
http://sources.debian.net/src/procmail/3.22-24/debian/patches/24/

References:
http://bugs.debian.org/549426

--- a/src/fields.c
+++ b/src/fields.c
@@ -110,16 +110,16 @@
 		    /* try and append one valid field to rdheader from stdin */
 int readhead P((void))
 { int idlen;
-  getline();
+  procmail_getline();
   if((idlen=breakfield(buf,buffilled))<=0) /* not the start of a valid field */
      return 0;
   if(idlen==STRLEN(FROM)&&eqFrom_(buf))			/* it's a From_ line */
    { if(rdheader)
 	return 0;			       /* the From_ line was a fake! */
-     for(;buflast=='>';getline());	    /* gather continued >From_ lines */
+     for(;buflast=='>';procmail_getline());	    /* gather continued >From_ lines */
    }
   else
-     for(;;getline())		      /* get the rest of the continued field */
+     for(;;procmail_getline())		      /* get the rest of the continued field */
       { switch(buflast)			     /* will this line be continued? */
 	 { case ' ':case '\t':				  /* yep, it sure is */
 	      continue;
--- a/src/formail.c
+++ b/src/formail.c
@@ -819,7 +819,7 @@
       { if(split)		       /* gobble up the next start separator */
 	 { buffilled=0;
 #ifdef sMAILBOX_SEPARATOR
-	   getline();buffilled=0;		 /* but only if it's defined */
+	   procmail_getline();buffilled=0;		 /* but only if it's defined */
 #endif
 	   if(buflast!=EOF)					   /* if any */
 	      goto splitit;
--- a/src/formisc.c
+++ b/src/formisc.c
@@ -115,7 +115,7 @@
   buf[buffilled++]=c;
 }
 
-int getline P((void))			   /* read a newline-terminated line */
+int procmail_getline P((void))			   /* read a newline-terminated line */
 { if(buflast==EOF)			 /* at the end of our Latin already? */
    { loadchar('\n');					  /* fake empty line */
      return EOF;					  /* spread the word */
--- a/src/formisc.h
+++ b/src/formisc.h
@@ -17,4 +17,4 @@
 char*
  skipwords P((char*start));
 int
- getline P((void));
+ procmail_getline P((void));
a.") (home-page "https://guix.gnu.org/cuirass/") (license l:gpl3+)))) (define-public laminar (package (name "laminar") (version "1.3") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/ohwgiles/laminar") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0ya5nzl1qf11if564xd49l8ajxyish7pbn875js4f153z775d3ks")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; TODO Can't build tests #:configure-flags (list "-DCMAKE_CXX_STANDARD=17" ;; "-DBUILD_TESTS=true" TODO: objcopy: js/stPskyUS: can't add ;; section '.note.GNU-stack': file format not recognized (string-append "-DLAMINAR_VERSION=" ,version)) #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-CMakeLists.txt (lambda _ (substitute* "CMakeLists.txt" (("file\\(DOWNLOAD.*\n$") "# file download removed by Guix --") (("install\\(FILES etc/laminar.service DESTINATION \\$\\{SYSTEMD\\_UNITDIR\\}\\)") "") (("install\\(FILES \\$\\{CMAKE\\_CURRENT\\_BINARY\\_DIR\\}\\/laminar\\.service DESTINATION \\$\\{SYSTEMD\\_UNITDIR\\}\\)") "") (("install\\(FILES etc/laminar\\.conf DESTINATION \\/etc\\)") "") (("\\/usr\\/") "")))) (add-after 'configure 'copy-in-javascript-and-css (lambda* (#:key inputs outputs #:allow-other-keys) (use-modules (ice-9 popen)) (mkdir-p "../build/js") (invoke "tar" "-xf" (assoc-ref inputs "chart.js.tgz") "--strip-components" "2" "package/dist/chart.js") (for-each (lambda (file minified-file) (let* ((port (open-pipe* OPEN_READ "uglifyjs" file)) (destination (string-append "../build/js/" minified-file))) (call-with-output-file destination (lambda (output-port) (dump-port port output-port))) (let ((exit (close-pipe port))) (unless (zero? exit) (error "uglifyjs failed" exit))))) (list (assoc-ref inputs "vue.js") (assoc-ref inputs "vue-router.js") "chart.js") (list "vue.min.js" "vue-router.min.js" "Chart.min.js")) ;; ansi_up.js isn't minified (copy-file (assoc-ref inputs "ansi_up.js") "../build/js/ansi_up.js")))))) (inputs (list capnproto rapidjson sqlite boost zlib)) (native-inputs `(("googletest" ,googletest) ("uglifyjs" ,node-uglify-js) ("vue.js" ,(origin (method url-fetch) (uri (string-append "https://raw.githubusercontent.com/" "vuejs/vue/v2.6.12/dist/vue.js")) (sha256 (base32 "1mq2dn6yqbmzar77xf4x2bvvanf9xc9nwfq06sksl5zmr300m7qm")))) ("vue-router.js" ,(origin (method url-fetch) (uri (string-append "https://raw.githubusercontent.com/" "vuejs/vue-router/v3.4.8/dist/vue-router.js")) (sha256 (base32 "1hkrbgzhpnrsb4zdafslqagy1vkac6bkdj7kh49js2lhkp9z4nj5")))) ("ansi_up.js" ,(origin (method url-fetch) (uri (string-append "https://raw.githubusercontent.com/" "drudru/ansi_up/v4.0.4/ansi_up.js")) (sha256 (base32 "1dx8wn38ds8d01kkih26fx1yrisg3kpz61qynjr4zil03ap0hrlr")))) ("chart.js.tgz" ,(origin (method url-fetch) (uri (string-append "https://github.com/chartjs/Chart.js/" "releases/download/v3.9.1/chart.js-3.9.1.tgz")) (sha256 (base32 "1ikjgspaknqlhpjad17563yph4pvrh8dkzjdx58pl23gg58hf7hi")))))) (synopsis "Lightweight continuous integration service") (description "Laminar is a lightweight and modular continuous integration service. It doesn't have a configuration web UI instead uses version-controllable configuration files and scripts. Laminar encourages the use of existing tools such as bash and cron instead of reinventing them.") (home-page "https://laminar.ohwg.net/") (license l:gpl3+)))