bug-gsrc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug-gsrc] Update Bazaar, add Python (dependency)


From: Luke Shumaker
Subject: Re: [bug-gsrc] Update Bazaar, add Python (dependency)
Date: Sun, 03 Jul 2011 00:25:27 -0400
User-agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (Gojō) APEL/10.8 Emacs/23.3 (i686-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO)

Sorry for the huge delay, FIRST Robotics absorbed my life for >6
weeks, then I never really came back to this.

----

In the patch 'external-python-bzr.patch' I've done what we discussed.

Attachment: external-python-bzr.patch
Description: Text document

I've implemented gar.lib/external.mk that can detect if a package
is externally installed files in in */bin, lib, python files,
pkgconfig. If it's installed, the cookies are created, if it's not it
prints a message telling the user to install the package, trying to
print one appropriate the the user's system.

It also provides a facility to install the package via GAR if it's not
installed, by setting MISSING to 'install' (instead of the default
'install-message').

I've added Python2 using this, though it does not optionally install
if it isn't (because I'm lazy, this probably should be done), and
given bazar python2 as a BUILDDEPT

----

I've also written a basic INSTALL file.

Attachment: install.patch
Description: Text document

----

While working with GSRC, I've noticed a few things:

----

It appears that the original design of GAR was to use the
`USE' variable to include other lib files, rather than
include them directly.  So, for example, instead of

include ../../gar.lib/auto.mk

one would use

USE = auto.mk
include ../../gar.mk

This would allow for things like moving the gar.lib directory
or having multiple directories.

The system is constructed that either method can be used
without breaking anything.  This means that if you agree that
the USE variable is in good design, the switch can be made
gradually.

----

GARDIR_ABSOLUTE := $(shell cd $(GARDIR) && pwd)
could be replaced with
GARDIR_ABSOLUTE := $(realpath $(GARDIR))
(in gar.mk)

While not vital, that was annoying me.  I assume that the
reason this was not used before is that $(realpath) was not
added until GNU Make 3.81 (2006-04-01).  The reason I have
not changed this is because you may wish to be compatible
with older releases of make, so I'll let you make that call.

----

~ Luke Shumaker
http://lukeshu.ath.cx

At Tue, 01 Feb 2011 17:44:29 +0000,
Brian Gough wrote:
> At Mon, 31 Jan 2011 19:44:22 -0500,
> Luke Shumaker wrote:
> > On Mon, 2011-01-31 at 16:24 +0000, Brian Gough wrote:
> > > I've been reluctant to add Python as a full dependency, due to its
> > > size and the fact that most people will have it installed already.
> > > 
> > > I think we really need some kind of mechanism to specify system
> > > packages like python-dev and tell the user to "apt-get install
> > > python-dev" (or whatever is appropriate on their system) if needed.
> > 
> > I've been thinking about a system to tag a package as installed by
> > another source, and to treat it as successfully installed.  This gives
> > me two questions:
> >  1) Would you accept such a patch?
> 
> Yes
> 
> >  2) Would I have to maintain compatibility with existing `.gar/',
> > `cookies/' and such?  Not that I plan on breaking it, but it will
> > probably affect design decisions.
> 
> The .gar stuff shouldn't be needed, cookies would be.
> 
> Essentially what is needed is a Makefile with an install target that
> creates the appropriate cookie if the package is found on the system,
> and otherwise prints a message telling the user the necessary
> 'apt-get' command or similar.
> 
> Then it can just be specified as a normal dependency.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]