This patch is a modified version of the patch being discussed at here:
https://patchwork.ozlabs.org/patch/471303/
from Martin Strbacka <martin.strbacka@nic.cz>
My version modifies scripts/feeds so that an error with one of the feeds just
raises the error flag, but script continues and tries to update the other
feeds. After all feeds have been updated, the script returns 1 if at least
one feed failed, and 0 on success with all feeds. The user can then utilise
the status in his build script, if he wants.
signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
SVN-Revision: 46374
As a follow-up to r46026, this commit sets the modification
times of files inside the tarballs to deterministic values.
It uses the date of the last git or svn commit and falls
back to the old behavior if those are not available.
Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>
SVN-Revision: 46360
lookup_target was trampling the $feed variable, resulting in the -p flag
no longer preferentially installing from the named feed.
Make sure to use a local variable for this instead.
Signed-off-by: Karl Palsson <karlp@remake.is>
SVN-Revision: 46120
When creating control.tar.gz, data.tar.gz and $package.ipk
tar compresses them with default gzip options.
This includes build timestamps in their gzip headers.
By setting the GZIP env variable to -n, gzip no longer embeds
them, which is a step towards reproducibility.
See also [1] for more detailed motivations.
[1]: https://wiki.debian.org/ReproducibleBuilds/About
Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>
SVN-Revision: 46026
In r45785 ixp4xx was changed to use a common image prefix also for
kernels, but the script creating them was not updated to generate the
expected filenames.
Fix this by letting arm-magic.sh respect $IMG_PREFIX for the output
kernel file names as well.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 45803
Hello,
if you run:
./scripts/feeds clean
It removes ./feeds folder but not ./package/feeds/ which is full of dangling links then. This patch fixes it.
Best Regards,
Martin Strbačka
Signed-off-by: Martin Strbacka <martin.strbacka@nic.cz>
SVN-Revision: 45738
mkits.sh help currently shows dtb file as optional, but generates an
invalid its file when this option is unspecified.
We're fixing this problem by removing the use of the sed command and
just including variables instead.
Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com>
SVN-Revision: 45659
Split out kmods from ALL to make it easier to create local builds that
are compatible kmod-wise with releases.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44830
Git internals are referenced by .git which isn't necessarily a
directory. It may also be a file that references the actual .git
directory using the gitdir directive.
If .git is assumed to be a directory the build will not be able to get
the correct version when openwrt is included as a git submodule because
when used as a submodule .git will actually be a file referencing to a
subdirectory in the parent's git dir.
When the correct version is not detected some image generation tools
will fail because the OpenWrt string will be 'OpenWrtunknown' which is
too long for some header formats.
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
SVN-Revision: 44452
Remove all rpath entries which do not point to a location below /lib or
/usr/lib and which do not begin with '$ORIGIN'.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44377
With this change, override information is now parsed from the metadata
and put in the %packages hash. A new hash - %overrides - is created and
exported, to be used during the .config-package.in generation.
If an override is detected, a new option CONFIG_OVERRIDE_PKGS will be
created in the .config, and will contain a space-separated list of all
the overridden packages.
Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com>
SVN-Revision: 44336
Currently, replacing a package available in openwrt.git requires
modifications in openwrt.git, or requires duplicating the package in a
feed but with a different name, which causes all kind of problems
related to dependencies (all packages selecting it would have to be
modified accordingly to select the new package).
With this change, if a package with the same name is present both in
feeds/ and package/ folders, the one in feeds/ can override the one
in package/, both in the menuconfig and during the build, by passing the
"-f" option to "./scripts/feeds install"
This mechanism is particularly useful for vendor tree, or in general for
application which needs to replace one particular package which exists
within openwrt.git by a custom/newer version.
Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com>
SVN-Revision: 44334
Do not output faulty ".ko" dependency if a scanned .ko file has an empty
"depends=" specification, also replace the `grep | sed | awk` chain with a
single sed program.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44206
Currently, replacing a package available in openwrt.git requires
modifications in openwrt.git, or requires duplicating the package in a
feed but with a different name, which causes all kind of problems
related to dependencies (all packages selecting it would have to be
modified accordingly to select the new package).
With this change, if a package with the same name is present both in
feeds/ and package/ folders, the one in feeds/ can override the one
in package/, both in the menuconfig and during the build, by passing the
"-f" option to "./scripts/feeds install"
This mechanism is particularly useful for vendor tree, or in general for
application which needs to replace one particular package which exists
within openwrt.git by a custom/newer version.
Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com>
SVN-Revision: 44076
When the initial glob() attempt on a path specified with "source" statement
yields no result, then retry the globbing on the same path with the directory
part of the currently processed file prepended.
This allows us to reference Config.in files relative to their parent instead
of relative to the top dir.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 43652
Plain "remote" results in failure to connect using the gdb built with
the toolchain. (On atheros target at least) extended-remote also allows
"run" to restart the target process.
Signed-off-by: Karl Palsson <karlp@remake.is>
SVN-Revision: 43596
Many packages define already metadata about their license (PKG_LICENSE),
but this is only included in the ipk files.
This change allows to create the information also on the build-host,
to get an overview on the used licenses.
In the full list, also all packages without this info are shown
Signed-off-by: Thomas Langer <thomas.langer@lantiq.com>
SVN-Revision: 43070
[base-files] shell-scripting: fix wrong usage of '==' operator
normally the '==' is used for invoking a regex parser and is a bashism.
all of the fixes just want to compare a string. the used busybox-ash
will silently "ignore" this mistake, but make it portable/clean at least.
this patch does not change the behavior/logic of the scripts.
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
SVN-Revision: 42911
pts/feeds update -a" can fail rather silently for feeds using git, as
the script does not pause when updating a feed fails. Instead it prints the
error message and calmly continues to the next feed. It is very easy to
overlook update errors with the feeds updated first, as their text scrolls
rapidly away from the screen.
This behaviour has not been a big problem with svn feeds, as svn update stops
with a conflict message and interactively forces the user to resolve or
postpone the conflict. In any case the svn error is noticed by the user.
Majority of the feeds use now git, so this silent failure can affect users
doing private builds in an increasing amount.
Below is an example of update failing and script continuing:
perus@v1404:/Openwrt/barrier$ ./scripts/feeds update -a
Updating feed 'packages' from
'https://github.com/openwrt/packages.git;for-14.07' ...
remote: Counting objects: 17, done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 17 (delta 10), reused 8 (delta 1)
Unpacking objects: 100% (17/17), done.
From https://github.com/openwrt/packages
62031da..dc26009 for-14.07 -> origin/for-14.07
Updating 62031da..dc26009
error: Your local changes to the following files would be overwritten by merge:
utils/collectd/Makefile
Please, commit your changes or stash them before you can merge.
Aborting
failed.
Updating feed 'luci' from 'http://git.openwrt.org/project/luci.git;luci-0.12' ...
Already up-to-date.
Create index file './feeds/luci.index'
Updating feed 'routing' from
'https://github.com/openwrt-routing/packages.git;for-14.07' ...
...
The script prints "failed.", but does not break the updating process. The
"update_feed" function returns an error code 1, but that value is not checked
in the "update" function, which continues to the next feed.
Return 1 as error:
https://dev.openwrt.org/browser/trunk/scripts/feeds#L547
Call to update_feed without any error monitoring:
https://dev.openwrt.org/browser/trunk/scripts/feeds#L585
The included patch makes the feeds script to stop updating after failing to
update a feed.
The script continues to the refresh_config step despite a possible failure in
updating, so the stopping action just prevents the other feeds from updating
and makes the error more clearly visible.
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
SVN-Revision: 42891
I defined a new download method @SAVANNAH in include/download.mk and scripts/download.pl,
and converted quilt and qemu to use that method.
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
SVN-Revision: 42840
This changeset implements a new menuconfig option to generate separate
repositories for each enabled package feed instead of one monolithic one.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 42002
r41359 broke support for building ubinized images which do
include a kernel volume.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 41368
ubinize-image.sh previously used ${var:offset:length} substitutions
which are not valid in standard shell.
Replace the existing parameter matching by a case ... esac expression.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 41347
This is a wrapper for the ubinize tool which integrates auto-generation
of the ubinize.cfg for common volume layouts with and without a kernel
volume.
It supports auto-detecting the rootfs-type and decides whether or not
to include a rootfs_data volume based on whether the rootfs is ubifs
or not (and thus is read-only and needs rootfs_data ubifs overlay).
The script allows to create layouts as found in all current
ubinize{,-overlay}.cfg files using
ubinize-image.sh --no-kernel root.{ubifs,squashfs} output.ubi $UBI_OPTS
It also includes support for adding ubootenv and ubootenv2 volumes
typically used by U-Boot for storing its environment in UBI using the
"--uboot-env" parameter.
See also
https://gitorious.org/openwrt-oxnas/openwrt-oxnas/source/target/linux/
oxnas/image/Makefile
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
create mode 100755 scripts/ubinize-image.sh
SVN-Revision: 41121
Following syntax should be used to enable this feature:
src-git custom git://openwrt/custom-feed^SHA_COMMIT_ID
Signed-off-by: Luka Perkov <luka@openwrt.org>
SVN-Revision: 38172
Users may have merge.ff set to false, which will force merge commits to
be generated. The intent here is to have a fast-forward merge when
possible, so let's make sure fast-forwards are enabled.
Signed-off-by: John Szakmeister <john@szakmeister.net>
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 37884
Make jffs2_nand a separate option so this can be triggered without forcing
jffs2 images for nor targets.
Adds a new NAND_BLOCKSIZE variable that allows setting the generated layout
in <page_size>:<block_size> pairs.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 36860
Enabling MIPS16 is made conditional on advertising the "mips16" feature
for a specific target since it requires support from the CPU
(HAS_MIPS16) and the actual use of MIPS16 for building packages
(USE_MIPS16).
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 36202
following patch allows to build images for Qemu ARM on
OpenBSD 5.2 amd64 and FreeBSD 9.1 amd64.
Mostly small pieces of code changes to get things right on the
specific platform.
Updated the README to describe better, which tools on the host
are required. Added some kind of prepare scripts to install needed
tools on BSD via packages.
Signed-off-by: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
SVN-Revision: 35900
Add .tar.xz, .txz, and .orig.tar.xz as known extensions to dl_cleanup.py.
Signed-off-by: Ian Leonard <antonlacon@gmail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 35645
Musl is an alternative C-library, see http://www.musl-libc.org for more infos.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 34314
It will be used for non OM2P boards as well.
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 34200
r26926 moved all target features to subtargets if present, which had the
side effect that broken targets are available for selection, just without
any available subtargets (since they are still marked as broken).
Fix this by explicitly letting the top level target also depend on broken.
SVN-Revision: 33892
V=99 and V=1 are now deprecated in favor of a new verbosity class system,
though the old flags are still supported.
You can set the V variable on the command line (or OPENWRT_VERBOSE in the
environment) to one or more of the following characters:
- s: stdout+stderr (equal to the old V=99)
- c: commands (for build systems that suppress commands by default, e.g. kbuild)
- w: warnings/errors only (equal to the old V=1)
SVN-Revision: 31484
Make the download script follow symlinks and search subfolders when looking for
a file in a local download mirror.
Signed-off-by: Tathagata Das <tathagata@alumnux.com>
SVN-Revision: 31240