gnu: Add cssc.
* gnu/packages/version-control.scm (cssc): New variable. * gnu/packages/patches/cssc-gets-undeclared.patch: New file * gnu/packages/patches/cssc-missing-include.patch: New file * gnu-system.am: Add gnu/packages/patches/cssc-gets-undeclared.patch and gnu/packages/patches/cssc-missing-include.patchmaster
parent
93c3de921a
commit
25f76ef0ba
|
@ -279,6 +279,8 @@ dist_patch_DATA = \
|
||||||
gnu/packages/patches/coreutils-dummy-man.patch \
|
gnu/packages/patches/coreutils-dummy-man.patch \
|
||||||
gnu/packages/patches/coreutils-skip-nohup.patch \
|
gnu/packages/patches/coreutils-skip-nohup.patch \
|
||||||
gnu/packages/patches/cpio-gets-undeclared.patch \
|
gnu/packages/patches/cpio-gets-undeclared.patch \
|
||||||
|
gnu/packages/patches/cssc-gets-undeclared.patch \
|
||||||
|
gnu/packages/patches/cssc-missing-include.patch \
|
||||||
gnu/packages/patches/curl-fix-test172.patch \
|
gnu/packages/patches/curl-fix-test172.patch \
|
||||||
gnu/packages/patches/dbus-localstatedir.patch \
|
gnu/packages/patches/dbus-localstatedir.patch \
|
||||||
gnu/packages/patches/diffutils-gets-undeclared.patch \
|
gnu/packages/patches/diffutils-gets-undeclared.patch \
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
CSSC uses a gets in a couple of places. For security reasons, modern gnulib
|
||||||
|
does not allow this. This patch allows it again.
|
||||||
|
--- CSSC-1.3.0/gl/lib/stdio.in.h 2010-05-15 00:15:35.000000000 +0200
|
||||||
|
+++ CSSC-1.3.0/gl/lib/stdio.in.h 2014-02-03 21:27:10.000000000 +0100
|
||||||
|
@@ -135,12 +135,6 @@
|
||||||
|
"use gnulib module fflush for portable POSIX compliance");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-/* It is very rare that the developer ever has full control of stdin,
|
||||||
|
- so any use of gets warrants an unconditional warning. Assume it is
|
||||||
|
- always declared, since it is required by C89. */
|
||||||
|
-#undef gets
|
||||||
|
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
|
||||||
|
-
|
||||||
|
#if @GNULIB_FOPEN@
|
||||||
|
# if @REPLACE_FOPEN@
|
||||||
|
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
|
@ -0,0 +1,12 @@
|
||||||
|
Added a missing include file (necessary for gid_t and others).
|
||||||
|
So far as I am aware, this has not been added upstream yet.
|
||||||
|
--- CSSC-1.3.0/src/file.h 2010-05-16 19:31:33.000000000 +0200
|
||||||
|
+++ CSSC-1.3.0/src/file.h 2014-02-03 21:48:30.000000000 +0100
|
||||||
|
@@ -30,6 +30,7 @@
|
||||||
|
#ifndef CSSC__FILE_H__
|
||||||
|
#define CSSC__FILE_H__
|
||||||
|
|
||||||
|
+#include <sys/types.h>
|
||||||
|
#include "filelock.h"
|
||||||
|
|
||||||
|
enum create_mode {
|
|
@ -44,7 +44,8 @@
|
||||||
#:use-module (gnu packages emacs)
|
#:use-module (gnu packages emacs)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages swig)
|
#:use-module (gnu packages swig)
|
||||||
#:use-module (gnu packages tcl))
|
#:use-module (gnu packages tcl)
|
||||||
|
#:use-module (gnu packages))
|
||||||
|
|
||||||
(define-public bazaar
|
(define-public bazaar
|
||||||
(package
|
(package
|
||||||
|
@ -435,3 +436,46 @@ standards-compliant ChangeLog entries based on the changes that it detects.")
|
||||||
insertions, deletions, and modifications per-file. It is useful for reviewing
|
insertions, deletions, and modifications per-file. It is useful for reviewing
|
||||||
large, complex patch files.")
|
large, complex patch files.")
|
||||||
(license (x11-style "file://COPYING"))))
|
(license (x11-style "file://COPYING"))))
|
||||||
|
|
||||||
|
|
||||||
|
(define-public cssc
|
||||||
|
(package
|
||||||
|
(name "cssc")
|
||||||
|
(version "1.3.0")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://gnu/" name "/CSSC-"
|
||||||
|
version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0bkw6fjh20ppvn54smv05461lm1vcwvn02avx941c4acafmkl1cm"))
|
||||||
|
(patches (list (search-patch "cssc-gets-undeclared.patch")
|
||||||
|
(search-patch "cssc-missing-include.patch")))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases (alist-cons-before
|
||||||
|
'check 'precheck
|
||||||
|
(lambda _
|
||||||
|
(begin
|
||||||
|
(substitute* "tests/common/test-common"
|
||||||
|
(("/bin/pwd") (which "pwd")))
|
||||||
|
|
||||||
|
(substitute* "tests/prt/all-512.sh"
|
||||||
|
(("/bin/sh") (which "sh")))
|
||||||
|
|
||||||
|
;; XXX: This test has no hope of passing until there is a "nogroup"
|
||||||
|
;; entry (or at least some group to which the guix builder does
|
||||||
|
;; not belong) in the /etc/group file of the build environment.
|
||||||
|
;; Currently we do not have such a group. Disable this test for now.
|
||||||
|
(substitute* "tests/Makefile"
|
||||||
|
(("test-delta ") ""))))
|
||||||
|
%standard-phases)))
|
||||||
|
;; These are needed for the tests
|
||||||
|
(native-inputs `(("git" ,git)
|
||||||
|
("cvs" ,cvs)))
|
||||||
|
(home-page "http://www.gnu.org/software/cssc/")
|
||||||
|
(synopsis "File-based version control like SCCS")
|
||||||
|
(description "GNU CSSC provides a replacement for the legacy Unix source
|
||||||
|
code control system SCCS. This allows old code still under that system to be
|
||||||
|
accessed and migrated on modern systems.")
|
||||||
|
(license gpl3+)))
|
||||||
|
|
Reference in New Issue