<feed xmlns='http://www.w3.org/2005/Atom'>
<title>buildroot.git/package/Makefile.package.in, branch master</title>
<subtitle>Buildroot</subtitle>
<id>https://git.etezian.org/cgit.cgi/buildroot.git/atom?h=master</id>
<link rel='self' href='https://git.etezian.org/cgit.cgi/buildroot.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/'/>
<updated>2012-04-19T14:07:15+00:00</updated>
<entry>
<title>Split Makefile.package.in in pkg-download.mk, pkg-utils.mk and pkg-gentargets.mk</title>
<updated>2012-04-19T14:07:15+00:00</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2012-04-17T14:45:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=6e6b99a5714834c9330c30dd3af04009f5713204'/>
<id>urn:sha1:6e6b99a5714834c9330c30dd3af04009f5713204</id>
<content type='text'>
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>DOWNLOAD: change $1=DIRECTORY_URL, $2=FILE_NAME to $1=FULL_FILE_URL, $2=FILE_NAME</title>
<updated>2012-03-18T21:21:16+00:00</updated>
<author>
<name>Alvaro G. M</name>
<email>alvaro.gamez@hazent.com</email>
</author>
<published>2012-03-16T13:42:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=0a4856ce27027e939fdcd350fb0b246cbda75e93'/>
<id>urn:sha1:0a4856ce27027e939fdcd350fb0b246cbda75e93</id>
<content type='text'>
This modifies the definition of DOWNLOAD to receive two arguments:
the first one is the full URL of the file to download, whereas the second
(and optional) is the name the file will have once downloaded.

Same thing with the SOURCE_CHECK_WGET and SCP functions.

All calls to these functions have been changed to the shortest form of
the new API, except for toolchains acquisition. Since there is quite a
number of different toolchains this call to DOWNLOAD is better set to the
generic one.

Signed-off-by: Alvaro G. M &lt;alvaro.gamez@hazent.com&gt;
Acked-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
Tested-by: Stephan Hoffmann &lt;sho@relinux.de&gt;
Downloading Microblaze LE toolchain works on a clean install
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>package: fix WGET download method</title>
<updated>2012-03-05T19:56:28+00:00</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2012-03-05T10:06:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=3311e41dc0f36967bbadc972839269197c5e88a1'/>
<id>urn:sha1:3311e41dc0f36967bbadc972839269197c5e88a1</id>
<content type='text'>
In cf2486bf317e4bbf88c801fb96183ba62be78cc8, we changed from using the
-P option of wget (to set the output *directory*) to using the -O
option (to set the output *file*). Unfortunately, wget -O has a
strange behaviour: it creates an empty 0-byte file even if the
download fails (for example when there is no network connection).

The problem is that then Buildroot thinks the download was successful
and therefore goes on with extracting the tarball.

The following succession of events makes Buildroot think that the
download has been sucessful:

 * Buildroot calls the DOWNLOAD_WGET macro with the URL of the
   official site

   * It tests if the file exists in the download directory, it doesn't
     exist.

   * It calls wget. wget fails to download the file and returns an
     error code, but leaves an empty file with the correct name in the
     downloaded directory.

 * Since the previously download failed, Buildroot tries another
   download from the Buildroot mirror (sources.buildroot.net)

   * It tests if the file exists in the download directory... and it
     exists! So this second download returns with success, and
     Buildroot assumes the file has been downloaded properly.

This scenario brings us with the following result, where the download
fails, but Buildroot continues its execution and tries to extract the
tarball:

$ rm /opt/dl/glib-2.30.2.tar.bz2
rm: cannot remove `/opt/dl/glib-2.30.2.tar.bz2': No such file or directory
$ rm -rf build/host-libglib2-2.30.2/
$ make
make -C /home/thomas/projets/buildroot O=/opt/outputs/udisks/.
&gt;&gt;&gt; host-libglib2 2.30.2 Downloading
--2012-03-03 12:06:25--  http://ftp.gnome.org/pub/gnome/sources/glib/2.30/glib-2.30.2.tar.bz2
Resolving ftp.gnome.org... failed: Name or service not known.
wget: unable to resolve host address `ftp.gnome.org'
&gt;&gt;&gt; host-libglib2 2.30.2 Extracting
bzcat /opt/dl//glib-2.30.2.tar.bz2 | tar --strip-components=1 -C /opt/outputs/udisks/build/host-libglib2-2.30.2  -xf -
bzcat: Compressed file ends unexpectedly;
	perhaps it is corrupted?  *Possible* reason follows.
[...]
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
make[1]: *** [/opt/outputs/udisks/build/host-libglib2-2.30.2/.stamp_extracted] Error 2
make: *** [all] Error 2
$ ls -l /opt/dl/glib-2.30.2.tar.bz2
-rw-r--r-- 1 thomas thomas 0 Mar  3 12:12 /opt/dl/glib-2.30.2.tar.bz2

Therefore, this commit modifies DOWNLOAD_WGET so that it removes the
downloaded file if wget returns with an error.

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Acked-by: Luca Ceresoli &lt;luca@lucaceresoli.net&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>DOWNLOAD_WGET: use -O instead of -P to set output file</title>
<updated>2012-02-14T11:07:27+00:00</updated>
<author>
<name>Arnout Vandecappelle (Essensium/Mind)</name>
<email>arnout@mind.be</email>
</author>
<published>2012-02-14T09:56:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=cf2486bf317e4bbf88c801fb96183ba62be78cc8'/>
<id>urn:sha1:cf2486bf317e4bbf88c801fb96183ba62be78cc8</id>
<content type='text'>
Some URLs use url-encoded arguments to specify the file to download.
Wget will then use an output file name which includes all the ampersands
and such.  However, this is not what we see from buildroot.

E.g.:
FOO_SITE="http://git.foo.com/?p=foo.git;a=blob;f="
FOO_SOURCE="foo.tgz"

wget will download this into $(DL_DIR)/index.html?p=foo.git;a=blob;f=foo.tgz
buildroot thinks it's in $(DL_DIR)/foo.tgz

To make sure the view of wget and buildroot are consistent, specify
the output file explicitly.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>dependencies: build a host-tar if no suitable tar can be found</title>
<updated>2012-02-09T21:59:21+00:00</updated>
<author>
<name>Thomas De Schampheleire</name>
<email>patrickdepinguin+buildroot@gmail.com</email>
</author>
<published>2012-02-08T16:22:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=fd10b42ab8db0cd5d2f3c9076d54244c6e0e60a8'/>
<id>urn:sha1:fd10b42ab8db0cd5d2f3c9076d54244c6e0e60a8</id>
<content type='text'>
Some toolchains, like the one built with buildroot itself, use hardlinks (for
example to link between the c++ and g++ binary). Unpacking such a toolchain
with the --strip-components options does not work correctly if the system tar
is too old (&lt;1.17). Even recent releases of RedHat/CentOS still ship with
tar 1.15.

This patch checks for a suitable tar version (tar 1.17+) on the host system,
and adds host-tar to the host dependencies if none can be found.

host-tar is download and extracted as cpio.gz instead of tar.gz, to prevent
chicken-egg problem.

Signed-off-by: Thomas De Schampheleire &lt;thomas.de.schampheleire@gmail.com&gt;
v4 Acked-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>pkg-infra: improve reliability of foo-install</title>
<updated>2012-02-02T21:52:35+00:00</updated>
<author>
<name>Arnout Vandecappelle (Essensium/Mind)</name>
<email>arnout@mind.be</email>
</author>
<published>2012-01-21T00:01:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=5fe4b2c3998bdeae8a1546ce57e00aad5cdeb17a'/>
<id>urn:sha1:5fe4b2c3998bdeae8a1546ce57e00aad5cdeb17a</id>
<content type='text'>
Running foo-uninstall has a high likelyhood of failing, because we
remove a lot of directories from the target.  To improve the reliability,
remove the stamp files before calling the uninstall commands, and add
the -k option to the sub-make.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>Add support for package-declared devices</title>
<updated>2012-02-01T21:55:49+00:00</updated>
<author>
<name>Maxime Ripard</name>
<email>maxime.ripard@free-electrons.com</email>
</author>
<published>2012-01-11T17:53:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=2444085bdc3b2931c4826e455b938ce75d10821c'/>
<id>urn:sha1:2444085bdc3b2931c4826e455b938ce75d10821c</id>
<content type='text'>
Add a way for packages to declare files they need instead of relying
only on device tables, which creates files no matter if the package is
indeed enabled, as we can see for busybox.

Signed-off-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Acked-by: Thomas De Schampheleire &lt;thomas.de.schampheleire@gmail.com&gt;
Acked-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>Only derrive HOST_FOO_DEPENDENCIES from FOO_DEPENDENCIES if not set, not nonempty</title>
<updated>2012-01-18T15:02:51+00:00</updated>
<author>
<name>Peter Korsgaard</name>
<email>jacmet@sunsite.dk</email>
</author>
<published>2012-01-18T14:54:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=1b07928aa647074f790a01f0302f241391b5c923'/>
<id>urn:sha1:1b07928aa647074f790a01f0302f241391b5c923</id>
<content type='text'>
In make, ifndef VAR means if 'VAR is not set to the empty string', and
NOT 'VAR is not defined', which meant that you couldn't specify empty
FOO_HOST_DEPENDENCIES.

Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>package: derive HOST_FOO_DEPENDENCIES from FOO_DEPENDENCIES</title>
<updated>2012-01-17T22:28:47+00:00</updated>
<author>
<name>Arnout Vandecappelle (Essensium/Mind)</name>
<email>arnout@mind.be</email>
</author>
<published>2012-01-16T13:58:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=bbc53fa8446a4106eb666310f19a9bfbd0b4f3c7'/>
<id>urn:sha1:bbc53fa8446a4106eb666310f19a9bfbd0b4f3c7</id>
<content type='text'>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>dependencies: check for extract tools as well</title>
<updated>2011-12-04T19:27:21+00:00</updated>
<author>
<name>Peter Korsgaard</name>
<email>jacmet@sunsite.dk</email>
</author>
<published>2011-12-04T19:23:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/buildroot.git/commit/?id=2c6390a5d0c01420879e9f23bc89afb19976da4a'/>
<id>urn:sha1:2c6390a5d0c01420879e9f23bc89afb19976da4a</id>
<content type='text'>
Most of the extract tools (gzip/bzip/..) we already check for explicitly
in dependencies.sh (as they are used outside GENTARGETS), but not for
xzcat.
The .xz format is used fairly rarely, and it is likely to not be available
on build hosts, so an explicit (hardcoded) check for it isn't optimal.
Instead, add the inflate tools used to DL_TOOLS_DEPENDENCIES, similar to
how we do it for svn/git/bzr/...

Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
</feed>
