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

Re: Latest upstream versions of files



Charles Plessy <plessy@debian.org> writes:

> the Policy gives more hints:
> 
>   get-orig-source (optional)
>   
>       This target fetches the most recent version of the original source
>   package from a canonical archive site (via FTP or WWW, for example),
>   does any necessary rearrangement to turn it into the original source tar
>   file format described below, and leaves it in the current directory.
>   
>       This target may be invoked in any directory, and should take care to
>   clean up any temporary files it may have left.
> 
> http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules

Okay, that's pretty good, thank you.

I have the following rule:

    .PHONY: get-orig-source
    get-orig-source: ${SOURCE_FILES}
    	dpkg-source -b $(CURDIR)

This isn't having the desired effect; 'dpkg-source' attempts to write
to temporary files in the current directory, and then complains that
the directory content changes while it was reading it.

    dpkg-source: info: building lojban-common in lojban-common_1.4-2.tar.gz
    tar: lojban-common.debian/lojban-common_1.4-2.tar.gz.new.ohh0aH: file changed as we read it

Do I need to make a temp directory, replicate the files from the
current directory into that temporary directory, invoke 'dpkg-source',
and clean up? Or is there a more straightforward way?

It also isn't making the expected 'lojban-common_1.4.orig.tar.gz', but
instead seems to just be making a tarball based on the full Debian
version. The 'dpkg-source' manpage doesn't indicate how I should
change this behaviour. How do I build *only* the upstream-source
tarball?

-- 
 \      "The way to build large Python applications is to componentize |
  `\          and loosely-couple the hell out of everything."  -- Aahz |
_o__)                                                                  |
Ben Finney


Reply to: