svn - but smaller?

Emanuel Haupt ehaupt at FreeBSD.org
Thu Jan 24 06:24:41 UTC 2013


Peter Wemm <peter at wemm.org> wrote:
> On Wed, Jan 23, 2013 at 3:16 PM, Peter Wemm <peter at wemm.org> wrote:
> > On Wed, Jan 23, 2013 at 3:05 PM, Peter Wemm <peter at wemm.org> wrote:
> >> On Wed, Jan 23, 2013 at 1:25 PM, Chris Rees <crees at freebsd.org>
> >> wrote:
> >>> On 23 January 2013 19:17, Emanuel Haupt <ehaupt at freebsd.org>
> >>> wrote:
> >>>> devel/subversion already has an option to build a static
> >>>> version. A solution could be to create a stub port
> >>>> (devel/subversion-static) similar to:
> >>>>
> >>>> shells/bash-devel
> >>>> shells/bash-static-devel
> >>>>
> >>>> dns/ldns
> >>>> dns/py-ldns
> >>>
> >>> Great idea;
> >>>
> >>> http://www.bayofrum.net/~crees/patches/svn-static.diff
> >>
> >> No, you completely missed the point.
> >>
> >> Its not about static linking its embedded subversion libraries.
> >> I'm complaining about things like gdbm and bdb via apr, build
> >> dependencies like both python and perl for apr, and so on.
> >>
> >> If you made a port just to turn on the static option, it is
> >> equally as fail as before.
> >
> > Specific example.. doing a portsnap and build of devel/subversion
> > out of the box, you get:
> >
> > ===>>> The following actions will be taken if you choose to proceed:
> >         Install devel/subversion
> >         Install databases/sqlite3
> >         Install devel/pkgconf
> >         Install devel/apr1
> >         Install converters/libiconv
> >         Install devel/libtool
> >         Install databases/db42
> >         Install databases/gdbm
> >         Install devel/gmake
> >         Install devel/gettext
> >         Install devel/autoconf
> >         Install devel/autoconf-wrapper
> >         Install devel/m4
> >         Install lang/perl5.14
> >         Install misc/help2man
> >         Install devel/p5-Locale-gettext
> >         Install devel/automake
> >         Install devel/automake-wrapper
> >         Install lang/python27
> >         Install textproc/expat2
> >         Install www/neon29
> >
> > You can thin it down a bit by turning off a few bits..  neon->serf
> > helps a little but not much.  Trimming some runtime (vs buildtime)
> > grandchildren like apr's gdbm/bdb modules trims some license
> > dependencies.  I'll update that list when the build is finished.
> 
> FWIW, this is the runtime dependency list
> apr-1.4.6.1.4.1_3              Apache Portability Library
> expat-2.0.1_2                  XML 1.0 parser written in C
> gettext-0.18.1.1               GNU gettext package
> libiconv-1.14                  A character set conversion library
> pkg-1.0.4_1                    New generation package manager
> pkgconf-0.8.9                  Utility to help to configure compiler
> and linker flags
> serf-1.1.1                     Serf HTTP client library
> sqlite3-3.7.14.1               An SQL database engine in a C library
> subversion-1.7.8               Version control system
> 
> Doing a static link of the libsvn_* libraries into the binary doesn't
> help with this.

This is all I have in my buildjail:

root at portjail:/root # uname -a
FreeBSD portjail.home.critical.ch 9.1-STABLE FreeBSD 9.1-STABLE #1 r245789: Tue Jan 22 16:30:35 CET 2013     root at alaska.home.critical.ch:/usr/obj/usr/src/sys/GENERIC  amd64

root at portjail:/root # pkg_info
subversion-1.7.8    Version control system

All this is is a package built with the default options of devel/subversion plus STATIC.

I am perfectly able to use http as a chekout method:

root at portjail:/root # svn checkout --depth empty http://svn.FreeBSD.org/ports/head/audio/yell ports/audio/yell
Checked out revision 310914.
root at portjail:/root # svn update --set-depth infinity ports/audio/yell/
Updating 'ports/audio/yell':
A    ports/audio/yell/distinfo
A    ports/audio/yell/pkg-descr
A    ports/audio/yell/Makefile
Updated to revision 310914.

root at portjail:/root # svn info ports/audio/yell/
Path: ports/audio/yell
Working Copy Root Path: /root/ports/audio/yell
URL: http://svn.freebsd.org/ports/head/audio/yell
Repository Root: http://svn.freebsd.org/ports
Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
Revision: 310914
Node Kind: directory
Schedule: normal
Last Changed Author: ehaupt
Last Changed Rev: 306932
Last Changed Date: 2012-11-03 19:01:22 +0100 (Sat, 03 Nov 2012)

Hence, to come back to the original post
$ pkg_add -r subversion-static

is the equivalent of
$ pkg_add -r cvsup-without-gui

Emanuel



More information about the freebsd-stable mailing list