History log of /freebsd/usr.bin/xinstall/xinstall.c (Results 26 – 50 of 246)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 8ce741ca 10-Jul-2020 Eugene Grosbein <eugen@FreeBSD.org>

install(1): correction after r363064

Make it not break if STRIPBIN points to strip version without -o support.
In that case, perform extra copy just like before r363064.

MFC after: 1 month
X-MFC-Wi

install(1): correction after r363064

Make it not break if STRIPBIN points to strip version without -o support.
In that case, perform extra copy just like before r363064.

MFC after: 1 month
X-MFC-With: 363064

show more ...


# 2d68fac9 10-Jul-2020 Eugene Grosbein <eugen@FreeBSD.org>

Optimize install(1) a bit.

Currently, "install -s -S" behaviour is inefficient for upgrade.
First it finds that destination file already exists and copies
source file to temporary file. Then it call

Optimize install(1) a bit.

Currently, "install -s -S" behaviour is inefficient for upgrade.
First it finds that destination file already exists and copies
source file to temporary file. Then it calls strip(1)
with name of temporary file as single agrument and our strip(1) creates
another temporary file in the /tmp (or TMPDIR) making another copy
that is finally copied to DESTDIR third time.

Meantime, strip(1) has an option "-o dst" to specify destination
so install(1) is allowed to skip initial copying from obj to DESTDIR.
This change makes it do so.

Take a look at https://reviews.freebsd.org/D25551 for details
and efficiency numbers (in short: upto 32% gained for installword).

MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D25551

show more ...


Revision tags: release/11.4.0
# 52918a7b 20-Nov-2019 Alex Richardson <arichardson@FreeBSD.org>

Allow boostrapping xinstall on Linux

Linux does not have st_flags so we have to avoid using it there.

Reviewed By: emaste, imp
Differential Revision: https://reviews.freebsd.org/D22446


Revision tags: release/12.1.0, release/11.3.0
# c2c227a5 03-Feb-2019 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r343571 through r343711.


# 6cbda6d9 31-Jan-2019 Kyle Evans <kevans@FreeBSD.org>

install(1): Fix relative path calculation with partial common dest/src

For example, from the referenced PR [1]:

$ mkdir /tmp/lib/ /tmp/libexec
$ touch /tmp/lib/foo.so
$ install -lrs /tmp/lib/foo.so

install(1): Fix relative path calculation with partial common dest/src

For example, from the referenced PR [1]:

$ mkdir /tmp/lib/ /tmp/libexec
$ touch /tmp/lib/foo.so
$ install -lrs /tmp/lib/foo.so /tmp/libexec/

The common path identification bits terminate src at /tmp/lib/ and the
destination at /tmp/libe. The subsequent backtracking is then incorrect, as
it traverses the destination and backtraces exactly one level while eating
the 'libexec' because it was previously (falsely) identified as common with
'lib'.

The obvious fix would be to make sure we've actually terminated just after
directory separators and rewind a character if we haven't. In the above
example, we would end up rewinding to /tmp/ and subsequently doing the right
thing.

Test case added.

PR: 235330 [1]
MFC after: 1 week

show more ...


Revision tags: release/12.0.0
# da2d1e9d 29-Aug-2018 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r338298 through r338391.


# d8134765 27-Aug-2018 Kirk McKusick <mckusick@FreeBSD.org>

When doing a -S "safe copy", the install command should do an
fsync(2) system call after copying the installed file to ensure
that it is on stable storage.

PR: 230851
Reviewed by: kib
Appro

When doing a -S "safe copy", the install command should do an
fsync(2) system call after copying the installed file to ensure
that it is on stable storage.

PR: 230851
Reviewed by: kib
Approved by: re (marius)

show more ...


Revision tags: release/11.2.0
# 5f401182 16-Jan-2018 Alex Richardson <arichardson@FreeBSD.org>

Allow xinstall and makefs to be crossbuilt on Linux and Mac

I need these tools in order to install the crossbuilt FreeBSD and create a
disk image. Linux does not have a st_flags in struct stat so un

Allow xinstall and makefs to be crossbuilt on Linux and Mac

I need these tools in order to install the crossbuilt FreeBSD and create a
disk image. Linux does not have a st_flags in struct stat so unfortunately
I need a bunch of ugly ifdefs. The resulting binaries allow me to
sucessfully install a MIPS64 world and create a disk-image that boots.

Reviewed By: brooks, bdrewery, emaste
Approved By: jhb (mentor)
Differential Revision: https://reviews.freebsd.org/D13307

show more ...


# 82725ba9 23-Nov-2017 Hans Petter Selasky <hselasky@FreeBSD.org>

Merge ^/head r325999 through r326131.


# 8a16b7a1 20-Nov-2017 Pedro F. Giffuni <pfg@FreeBSD.org>

General further adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 3-Clause license.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier f

General further adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 3-Clause license.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

Special thanks to Wind River for providing access to "The Duke of
Highlander" tool: an older (2014) run over FreeBSD tree was useful as a
starting point.

show more ...


# c2c014f2 07-Nov-2017 Hans Petter Selasky <hselasky@FreeBSD.org>

Merge ^/head r323559 through r325504.


# 0a8f81bc 22-Oct-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r324837

While here, diff reduce some of the changes in sys/boot by moving
MK_COVERAGE=no to sys/boot/Makefile.inc .


# 92b25dcd 12-Oct-2017 Mateusz Guzik <mjg@FreeBSD.org>

xinstall: plug an infinite loop in directory creation

If stat continues to fail with ENOENT and mkdir with EEXIST the code wont
finish. In particular this can show up when the target path follows th

xinstall: plug an infinite loop in directory creation

If stat continues to fail with ENOENT and mkdir with EEXIST the code wont
finish. In particular this can show up when the target path follows through
a symlink to a non-existent directory.

Reported by: ae
MFC after: 1 week

show more ...


Revision tags: release/10.4.0, release/11.1.0, release/11.0.1, release/11.0.0
# 27067774 16-Aug-2016 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r303250 through r304235.


# 569e9018 13-Aug-2016 Enji Cooper <ngie@FreeBSD.org>

MFhead @ r304038


# c8a8570c 10-Aug-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Squelch a false-positive Clang static analyzer warning.

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division


# 4a4768d9 10-Aug-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Fix -b failure not restoring flags on the destination file.

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division


# 89ad63ad 10-Aug-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Fix -S with -l not being atomic.

It was unlinking the target even though it uses rename(2) which already
effectively does that. -S is intended to not unlink(2) the target first.

MFC after: 1 week

Fix -S with -l not being atomic.

It was unlinking the target even though it uses rename(2) which already
effectively does that. -S is intended to not unlink(2) the target first.

MFC after: 1 week
Reviewed by: jhb
Sponsored by: EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D7452

show more ...


# 49cfff91 10-Aug-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Support -v for -l.

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division


# b81ddc83 10-Aug-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Fix -S with -b not atomically updating the destination file.

With both of these flags, the backup was created via rename(dest, backup)
followed by rename(tmp, dest). This left the destination file

Fix -S with -b not atomically updating the destination file.

With both of these flags, the backup was created via rename(dest, backup)
followed by rename(tmp, dest). This left the destination file missing
for a moment which contradicts the point of -S.

This fixes a race with installworld where PRECIOUSPROG and PRECIOUSLIB
files (which use -S for installation) would briefly be missing. In the
case of installing rtld with parallel installworld it could render an
error due to not having rtld present to run install/cp in another
process.

Reported by: jhb
Reviewed by: jhb
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D7451

show more ...


# e9a44873 10-Aug-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Trim out excessive / with -v when target directory ends with a trailing '/'.

This is a minor nit after r289391 made all installations to a directory always
end in a trailing '/'.

MFC after: 3 days

Trim out excessive / with -v when target directory ends with a trailing '/'.

This is a minor nit after r289391 made all installations to a directory always
end in a trailing '/'.

MFC after: 3 days
Sponsored by: EMC / Isilon Storage Division

show more ...


# 491cb043 28-Jul-2016 Ed Schouten <ed@FreeBSD.org>

Pull a copy of the input string before calling basename() and dirname().

POSIX allows implementations of these functions to modify their input.


# 649a3a56 09-Jun-2016 Jilles Tjoelker <jilles@FreeBSD.org>

install: When preserving timestamps, also copy the nanoseconds part.

Now that we have utimensat in -legacy, install(1) can use it.

This is a revert of r299942 which is itself a revert of r299850.


# dd537357 16-May-2016 Jilles Tjoelker <jilles@FreeBSD.org>

install: Revert utimensat usage (r299850).

This should fix the build on older stable/10, since install is a bootstrap
tool.

Pending a decision how to fix this properly, revert utimensat usage. Copi

install: Revert utimensat usage (r299850).

This should fix the build on older stable/10, since install is a bootstrap
tool.

Pending a decision how to fix this properly, revert utimensat usage. Copies
with the -p option will again appear older than the original almost always,
but -p is not commonly used.

show more ...


# ecaa1101 15-May-2016 Jilles Tjoelker <jilles@FreeBSD.org>

install: When preserving timestamps, also copy the nanoseconds part.


12345678910