From 7e9675dfa0324783b6590e28628780a46d48a7c0 Mon Sep 17 00:00:00 2001 From: tg Date: Thu, 16 Sep 2010 00:18:42 +0000 Subject: [PATCH 1/1] first rough draft of a mircvs package --- debian/README.source | 8 +++ debian/changelog | 5 ++ debian/compat | 1 + debian/control | 38 ++++++++++++++ debian/copyright | 19 +++++++ debian/cvs.pam | 12 +++++ debian/docs | 17 +++++++ debian/install | 14 ++++++ debian/links | 3 ++ debian/lintian/cvs | 5 ++ debian/manpages | 6 +++ debian/port.h | 22 +++++++++ debian/postinst | 33 +++++++++++++ debian/postrm | 27 ++++++++++ debian/rules | 137 +++++++++++++++++++++++++++++++++++++++++++++++++++ debian/source/format | 1 + debian/watch | 4 ++ 17 files changed, 352 insertions(+) create mode 100644 debian/README.source create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/cvs.pam create mode 100644 debian/docs create mode 100644 debian/install create mode 100644 debian/links create mode 100644 debian/lintian/cvs create mode 100644 debian/manpages create mode 100644 debian/port.h create mode 100644 debian/postinst create mode 100644 debian/postrm create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/watch diff --git a/debian/README.source b/debian/README.source new file mode 100644 index 0000000..45255bf --- /dev/null +++ b/debian/README.source @@ -0,0 +1,8 @@ +$MirOS: contrib/hosted/tg/deb/cvs/debian/README.source,v 1.1 2010/09/16 00:18:38 tg Exp $ + +The patches come from AnonCVS at +:extssh:_anoncvs@anoncvs.mirbsd.org:/cvs ports/devel/cvs/patches/ +and were simply concatenated. + +The configure.in file was patched to reflect version and maintainership. +Then, autoconf2.59_2.59-1_all was used to regenerate the configure files. diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..393292b --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +cvs (2:1.12.13-1~beta1) unstable; urgency=low + + * Initial release. (Closes: #9999999999 to please lintian.) + + -- Thorsten Glaser Wed, 15 Sep 2010 21:45:20 +0000 diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +5 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..0441282 --- /dev/null +++ b/debian/control @@ -0,0 +1,38 @@ +# $MirOS: contrib/hosted/tg/deb/cvs/debian/control,v 1.1 2010/09/16 00:18:39 tg Exp $ +# +Source: cvs +Section: vcs +Priority: optional +Maintainer: Thorsten Glaser +Build-Depends: debhelper (>= 5), autotools-dev, libbsd-dev, libpam0g-dev, + texinfo, zlib1g-dev +Standards-Version: 3.9.1 +# First word is the $CVSROOT (-d arg) string, second word the module. +Vcs-CVS: :ext:_anoncvs@anoncvs.mirbsd.org:/cvs contrib/hosted/tg/deb/cvs +Vcs-Browser: http://cvs.mirbsd.de/contrib/hosted/tg/deb/cvs/ + +Package: cvs +Architecture: any +Depends: ${misc:Depends}, ${shlibs:Depends}, dpkg (>= 1.15.4) | install-info +Replaces: cvs-doc +Conflicts: cvs-doc +Provides: cvs-doc +Description: Concurrent Versions System + CVS is a version control system, which allows you to keep old versions + of files (usually source code), keep a log of who, when, and why + changes occurred, etc., like RCS or SCCS. It handles multiple + developers, multiple directories, triggers to enable/log/control + various operations, and can work over a wide area network. The + following tasks are not included; they can be done in conjunction with + CVS but will tend to require some script-writing and software other + than CVS: bug-tracking, build management (that is, make and make-like + tools), and automated testing. + . + And a whole lot more. See the manual for more information. + . + GNU CVS, with the patches from here applied, is used (in this patched + version) heavily by the MirOS Project, internally, and to maintain the + MirOS BSD, MirPorts Framework, and other subprojects', as well as + hosted projects, such as FWCF, source code and associated other works. + . + This version also contains many patches originating from Debian. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..3cddf54 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,19 @@ +This package was debianised by Thorsten Glaser on +Wed Sep 15 21:52:29 UTC 2010. + +$MirOS: contrib/hosted/tg/deb/cvs/debian/copyright,v 1.1 2010/09/16 00:18:39 tg Exp $ + +It was downloaded from: +http://ftp.gnu.org/non-gnu/cvs/source/feature/1.12.13/cvs-1.12.13.tar.gz + + +GNU CVS itself is Copyright © 1986-2005 + The Free Software Foundation, Inc. +with portions contributed by others. + +It is licenced under the GNU General Public License, version 1 or later, +but contains code from gnulib which raises the minimum required version +of that licence to 2. On Debian systems, it can be found at +(GPLv1) /usr/share/common-licenses/GPL-1 and GPL-2. + +The file cvs.pam was copied from that other Debian package. diff --git a/debian/cvs.pam b/debian/cvs.pam new file mode 100644 index 0000000..66905d0 --- /dev/null +++ b/debian/cvs.pam @@ -0,0 +1,12 @@ +# +# /etc/pam.d/cvs - specify the PAM behaviour of CVS +# + +# We fall back to the system default in /etc/pam.d/common-* + +@include common-auth +@include common-account + +# We don't use password or session modules at all +# @include common-password +# @include common-session diff --git a/debian/docs b/debian/docs new file mode 100644 index 0000000..18dbefd --- /dev/null +++ b/debian/docs @@ -0,0 +1,17 @@ +# $MirOS: contrib/hosted/tg/deb/cvs/debian/docs,v 1.1 2010/09/16 00:18:39 tg Exp $ +#- +AUTHORS +BUGS +DEVEL-CVS +FAQ +HACKING +MINOR-BUGS +NEWS +PROJECTS +README +TODO +doc/*.ms +doc/*.pdf +doc/*.rtf +doc/HACKING.DOCS +doc/RCSFILES diff --git a/debian/install b/debian/install new file mode 100644 index 0000000..e71fbe5 --- /dev/null +++ b/debian/install @@ -0,0 +1,14 @@ +# $MirOS: contrib/hosted/tg/deb/cvs/debian/install,v 1.1 2010/09/16 00:18:39 tg Exp $ +#- +contrib/cvs_acls.html usr/share/cvs/contrib/ +contrib/cvshelp.man usr/share/cvs/contrib/ +contrib/descend.man usr/share/cvs/contrib/ +contrib/descend.sh usr/share/cvs/contrib/ +contrib/rcs2sccs.sh usr/share/cvs/contrib/ +contrib/sandbox_status.man usr/share/cvs/contrib/ +debian/lintian/cvs usr/share/lintian/overrides/ +debian/stagedir/usr/bin/cvs usr/bin/ +debian/stagedir/usr/bin/cvsbug usr/bin/ +debian/stagedir/usr/share/cvs/contrib/* usr/share/cvs/contrib/ +debian/stagedir/usr/share/info/cvs.info usr/share/info/ +debian/stagedir/usr/share/info/cvsclient.info usr/share/info/ diff --git a/debian/links b/debian/links new file mode 100644 index 0000000..548d564 --- /dev/null +++ b/debian/links @@ -0,0 +1,3 @@ +# $MirOS: contrib/hosted/tg/deb/cvs/debian/links,v 1.1 2010/09/16 00:18:40 tg Exp $ +#- +usr/share/cvs/contrib/rcs2log usr/bin/rcs2log diff --git a/debian/lintian/cvs b/debian/lintian/cvs new file mode 100644 index 0000000..7ab7641 --- /dev/null +++ b/debian/lintian/cvs @@ -0,0 +1,5 @@ +# $MirOS: contrib/hosted/tg/deb/cvs/debian/lintian/cvs,v 1.1 2010/09/16 00:18:41 tg Exp $ + +# these are just contrib +cvs: csh-considered-harmful ./usr/share/cvs/contrib/sccs2rcs +cvs: missing-dep-for-interpreter csh => tcsh | csh | c-shell (./usr/share/cvs/contrib/sccs2rcs) diff --git a/debian/manpages b/debian/manpages new file mode 100644 index 0000000..c62861c --- /dev/null +++ b/debian/manpages @@ -0,0 +1,6 @@ +# $MirOS: contrib/hosted/tg/deb/cvs/debian/manpages,v 1.1 2010/09/16 00:18:40 tg Exp $ +#- +contrib/rcs2log.1 +debian/stagedir/usr/share/man/man1/cvs.1 +debian/stagedir/usr/share/man/man5/cvs.5 +debian/stagedir/usr/share/man/man8/cvsbug.8 diff --git a/debian/port.h b/debian/port.h new file mode 100644 index 0000000..6299eb9 --- /dev/null +++ b/debian/port.h @@ -0,0 +1,22 @@ +/* $MirOS: contrib/hosted/tg/deb/cvs/debian/port.h,v 1.1 2010/09/16 00:18:40 tg Exp $ */ + +#ifndef DEBIAN__PORT_H +#define DEBIAN__PORT_H + +/* taken from mksh/sh.h */ +#undef __IDSTRING +#undef __IDSTRING_CONCAT +#undef __IDSTRING_EXPAND +#undef __COPYRIGHT +#undef __RCSID +#undef __SCCSID +#define __IDSTRING_CONCAT(l,p) __LINTED__ ## l ## _ ## p +#define __IDSTRING_EXPAND(l,p) __IDSTRING_CONCAT(l,p) +#define __IDSTRING(prefix, string) \ + static const char __IDSTRING_EXPAND(__LINE__,prefix) [] \ + __attribute__((used)) = "@(""#)" #prefix ": " string +#define __COPYRIGHT(x) __IDSTRING(copyright,x) +#define __RCSID(x) __IDSTRING(rcsid,x) +#define __SCCSID(x) __IDSTRING(sccsid,x) + +#endif diff --git a/debian/postinst b/debian/postinst new file mode 100644 index 0000000..ec21a8b --- /dev/null +++ b/debian/postinst @@ -0,0 +1,33 @@ +#! /bin/sh +# $MirOS: contrib/hosted/tg/deb/cvs/debian/postinst,v 1.1 2010/09/16 00:18:40 tg Exp $ + +set -e + +# upgrade case from Debian CVS +for x in /etc/cvs.conf /etc/cvs-cron.conf /etc/cvs-pserver.conf; do + test -e $x || continue + rm -f /etc/cvs.conf /etc/cvs-cron.conf /etc/cvs-pserver.conf + test -x /usr/sbin/update-inetd && update-inetd --remove "^cvspserver" + break +done + +case $1 in +configure) + addgroup --system _cvsadmin + ;; + +abort-upgrade|abort-remove|abort-deconfigure) + ;; + +*) + echo "postinst called with unknown argument '$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/debian/postrm b/debian/postrm new file mode 100644 index 0000000..ed1136b --- /dev/null +++ b/debian/postrm @@ -0,0 +1,27 @@ +#! /bin/sh +# $MirOS: contrib/hosted/tg/deb/cvs/debian/postrm,v 1.1 2010/09/16 00:18:40 tg Exp $ + +set -e + +case $1 in +purge) + rm -f /etc/cvs.conf /etc/cvs-cron.conf /etc/cvs-pserver.conf + test -x /usr/sbin/update-inetd && update-inetd --remove "^cvspserver" + delgroup --system --only-if-empty _cvsadmin + ;; + +remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + ;; + +*) + echo >&2 "postrm called with unknown argument '$1'" + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..f8763db --- /dev/null +++ b/debian/rules @@ -0,0 +1,137 @@ +#!/usr/bin/make -f +# $MirOS: contrib/hosted/tg/deb/cvs/debian/rules,v 1.1 2010/09/16 00:18:40 tg Exp $ +#- +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +CC?= gcc +CFLAGS= -Wall -g + +ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS))) +CFLAGS+= -O0 +else +CFLAGS+= -O2 +endif + +ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +NUMJOBS= $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +MAKEFLAGS+= -j${NUMJOBS} +endif + +CPPFLAGS+= -D_GNU_SOURCE +CPPFLAGS+= -DUSE_LIBBSD +LIBS+= -lbsd + +CPPFLAGS+= -include ${CURDIR}/debian/port.h + +CONFIGURE_ENV:= CC='${CC}' +CONFIGURE_ENV+= CFLAGS='${CFLAGS}' +CONFIGURE_ENV+= CPPFLAGS='${CPPFLAGS}' +CONFIGURE_ENV+= LIBS='${LIBS}' +CONFIGURE_ENV+= CSH=/bin/csh + +# check takes forever, so assume the safe choice +CONFIGURE_ENV+= ac_cv_func_working_mktime=no + +CONFIGURE_ARGS:= --prefix=/usr \ + --infodir=/usr/share/info \ + --mandir=/usr/share/man \ + --sysconfdir=/etc \ + --disable-dependency-tracking \ + --disable-maintainer-mode +CONFIGURE_ARGS+= --enable-pam \ + --with-hardcoded-pam-service-name=cvs +CONFIGURE_ARGS+= --disable-nls \ + --enable-client \ + --enable-password-authenticated-client \ + --enable-server \ + --enable-proxy \ + --enable-case-sensitivity \ + --disable-encryption \ + --disable-lock-compatibility \ + --disable-rootcommit \ + --disable-old-info-format-support \ + --enable-config-override=no \ + --without-krb4 \ + --without-gssapi \ + --with-external-zlib \ + --with-rsh=ssh \ + --with-editor=/bin/ed \ + --with-tmpdir=/var/tmp \ + --with-umask=002 \ + --with-cvs-admin-group=_cvsadmin + +MAKE_ARGS:= MAKEINFO='makeinfo --no-split' + +debian/.configure_stamp: + dh_testdir + -rm -f debian/.*_stamp build-aux/config.guess build-aux/config.sub + -rm -rf debian/builddir debian/stagedir + cp /usr/share/misc/config.guess /usr/share/misc/config.sub build-aux/ + mkdir debian/builddir debian/stagedir + cd debian/builddir && \ + env ${CONFIGURE_ENV} sh ../../configure ${CONFIGURE_ARGS} + @:>$@ + +build: debian/.configure_stamp + dh_testdir + cd debian/builddir && ${MAKE} + +clean: + dh_testdir + -rm -f debian/.*_stamp build-aux/config.guess build-aux/config.sub + -rm -f doc/cvs.1 doc/cvs.info* doc/cvsclient.info* + -rm -rf debian/builddir debian/stagedir + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + -rm -rf debian/stagedir + _topdir=$$(pwd); cd debian/builddir && \ + ${MAKE} DESTDIR=$$_topdir/debian/stagedir install + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs +# dh_installexamples + dh_install +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen + dh_installpam +# dh_installmime +# dh_installinit +# dh_installcron + dh_installinfo + dh_installman + dh_link + dh_strip + dh_compress + cd debian/cvs/usr/share/cvs/contrib && chmod +x descend.sh rcs2sccs.sh + dh_fixperms +# dh_perl +# dh_python +# dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install check diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..d3827e7 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +1.0 diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..6b48f52 --- /dev/null +++ b/debian/watch @@ -0,0 +1,4 @@ +# $MirOS: contrib/hosted/tg/deb/cvs/debian/watch,v 1.1 2010/09/16 00:18:41 tg Exp $ + +version=3 +http://ftp.gnu.org/non-gnu/cvs/source/feature/1.12.13/ cvs-([0-9.]*)\.tar\.gz -- 2.1.4