Age | Commit message (Collapse) | Author | Files | Lines |
|
This should be performed first, to avoid false positives on any checks
that would have been previously done before we knew our BASEDIR was
valid. Remove usage of readlink here as well, and use pushd/pwd to
resolve. The final trimming of any trailing slash (which might be the
entire BASEDIR value) resolves an edge case bug where specifying a
BASEDIR that resolved to '/' would cause explosions in add_symlink.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
|
|
|
|
the for loop is already a NOOP when the haystack is empty, so it already
falls through to the return 1.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
when one is set to " "
|
|
build an array of paths to modules, and install them all at once with
mkdir -p and cp --parents. Cuts back on our major source of calls to
install(1).
This is a tad ugly in that it creates some amount of data duplication,
keeping an array of paths in addition to module names. However, turns
out to be a worthwhile tradeoff as merging the two datasets into one
results in the need for massive string trimming.
|
|
Mostly, this groups "private" functions together, separate from public
functions.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
There's no use case for us calling cleanup without exiting afterwards,
so we can simplify all of our cleanup;exit; calls into just cleanup.
This means our sighandler is no longer needed (it wasn't really, to
begin with), but we split it up to make sure we exit with a posix-ish
128+signum exit value.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This avoids an expensive stat call and some other unnecessary path
juggling.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Much to my chagrin, we're going back to using ldd directly, as it's
otherwise too difficult to account for odd setups, such as idiots
wanting to create multilib initramfs images, or more commonly -- a 64
bit kernel on a 32 bit userland. Fortunately, we don't suffer too large
a regression in speed compared to the previous implementation.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Cut back to a single call to modinfo, instead of 3, which yields roughly
a 30% decrease in execution time for a single run of add_module. This of
course varies by module but it's an overall win.
Suggested-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
syntax errors in a later mount command
Fixes FS#24969.
|
|
The read loop will intentionally return 1 on EOF, but parse_hook will
interpret this as an error, and trip our error handler, reporting a
false positive failure.
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
|
|
|
|
|
|
Avoid: make: a2x: Command not found
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Thanks Dave Reisner for suggestion
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
|
|
The _add_dir call is all wrong. The necessary paths are created by
reversing the order of the _add_symlink and _add_file calls, as
_add_file will take care of creating parent directories.
Thanks-to: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
We can't let add_file get its hands on the config file, because we need
to be sure that an absolute path is honored. As a side effect, ensure
that $BASEDIR is appended to the config file during preset processing.
Thanks-to: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Thanks-to: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Thanks-to: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Without this, we hit an infinte loop and crash when a legacy 'install'
function in a hook is encountered.
Thanks-to: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
|
|
|
|
|
|
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
Thanks to Dave Reisner for having suggested!
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
before:
mkinitcpio -H sex
/sbin/mkinitcpio: line 105: /lib/initcpio/install/sex: No such file or directory
Help for hook 'sex':
GNU bash, version 4.2.10(2)-release (x86_64-unknown-linux-gnu)
These shell commands are defined internally. Type `help' to see this list.
after:
mkinitcpio -H sex
==> ERROR: No hook sex
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
It's annoying to remember the name of preset each time
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
This will force the doc to be regenerated if there is a version bump in
the Makefile.
Signed-off-by: Dave Reisner <d@falconindy.com>
|
|
Signed-off-by: Dave Reisner <d@falconindy.com>
|
|
Bashify and refactor to cut back on unnecessary churn. Since our
{all,checked}_modules functions always return clean module names, we can
add these directly to the autodetect file instead of aggregating them
during the autodetect hook and then cleansing one at a time. There's a
small speed increase here for the simplest code path.
Signed-off-by: Dave Reisner <d@falconindy.com>
|
|
[fw]
Avoid inclusion of kernel/sound/firewire
[pcmcia]
Avoid inclusion of kernel/sound/pcmcia
[usb] and [usbinput]
Avoid inclusion of ignored modules (via grep cmd)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com>
|
|
This add proper support for a $BASEDIR, wherein as much as possible is
taken from the user specified root, instead of mixing and matching
binaries and modules. This avoids conflicts, particularly with binaries
like udev or module-init-tools which may have newer functionality that
the root in the $BASEDIR requires.
This is somewhat of a large patch, which involves a few key changes:
1) Add a new class of "private" functions: _add_*, which act as a "back
end" for the equivalent non-underscore-prefixed functions.
2) Refactor the add_* family of functions to use these new back end
functions. This generally simplifies the logic as we have a clear
division of labor.
3) Instead of using ldd, which is a glorified wrapper around the RTLD,
create a wrapper around the RTLD and invoke it ourselves. This is
basically just a small performance improvement -- the bulk of the
parsing done by this function's output is done in pure bash.
Signed-off-by: Dave Reisner <d@falconindy.com>
|
|
* Use loops where possible for module addition
* remove superfluous trim operation
* remove antiquated filters for modules which do not exist
Signed-off-by: Dave Reisner <d@falconindy.com>
|