* [ANNOUNCE] util-linux-ng 2.13-rc1
@ 2007-07-03 22:11 Karel Zak
2007-07-04 8:42 ` Christoph Hellwig
` (2 more replies)
0 siblings, 3 replies; 36+ messages in thread
From: Karel Zak @ 2007-07-03 22:11 UTC (permalink / raw)
To: List util-linux-ng; +Cc: linux-kernel, linux-fsdevel
The first util-linux-ng 2.13 release candidate is available at
ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.13/
Thanks to all who help with util-linux resuscitation:
H. Peter Anvin
Ian Kent
and contribute to this project:
Arkadiusz Miskiewicz Matthias Koenig
Cliff Wickman Mike Frysinger
David Brownell Pádraig Brady
David Miller Radek Biba
Jason Vas Dias Ram Pai
Kay Sievers Stepan Kasal
Luciano Chavez Steve Grubb
Marco d'Itri Valerie Henson
Martin Schlemmer
Feedback and bug reports, as always, are welcomed.
Karel
Util-linux-ng 2.13 Release Notes
================================
Release highlights:
------------------
mount(8) doesn't include NFS client code anymore. Don't forget to
install nfs-utils 1.1.0 or newer with /sbin/[u]mount.{nfs,nfs4}.
mount(8) doesn't include filesystem detection code anymore. You
have to compile --with-fsprobe={blkid,volume_id}, and libblkid
(e2fsprogs) or libvolume_id (udev >= v110) is required.
mount(8) supports new relatime, context, fscontext, and defcontext
mount options.
losetup(8) supports command line option "-a" to list all used loop
devices, '-s' to print a device name if "-f" and a file argument
are present, and "-r" to create a read-only loop device.
fdisk(8) Sun label support has been improved. fdisk(8) is also able
to warn about detected GPT (fdisk doesn't support GPT).
taskset(1) is independent on hardcoded NR_CPUS. chrt(1) supports
SCHED_BATCH scheduling policy.
The package build system is now based on autotools. The build system
supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
SUID_LDFLAGS). For more details see the README file
hwclock(8) supports command line option --rtc=<path> and /dev/rtc0
device. --systohc functionality has been improved, and it doesn't cause
a 500ms inaccuracy each time it is used.
Audit system support (--with-audit) has been added to hwclock(8) and
login(1).
SELinux support (--with-selinux) has been added to mkswap(8) and
mount(8).
The setarch(8) upstream has been merged with util-linux-ng.
Fixed security issues:
---------------------
CVE-2007-0822 - mount(8) allows local users to trigger a NULL
dereference and an application crash
CVE-2006-7108 - login(1) omits PAM account validation when auth is
skipped
Changelog:
---------
agetty:
add 'O' escape code to display domain name
check gethostname() return value
blockdev:
add BLKFRAGET/BLKFRASET ioctls
cleanup usage() and update man page
build-sys:
add AC_GNU_SOURCE
add Automake option dist-bzip2
add missing files
add SUID_CFLAGS
add SUID_LDFLAGS
add support for audit
amend .gitignore
call automake after autoconf
cleanup architecture conditionals
cleanup sys-utils/ rdev symlinks
configure.am selinux support cleanup
declare SUID_CFLAGS and SUID_LDFLAGS as precious
do not build convenience libraries in lib/
do not kick off AM_CFLAGS by SUID_CFLAGS
do not play with DEFS, use AM_CPPFLAGS
do not set with_foo twice
do not use internal Autoconf variables
do not use wildcards in EXTRA_DIST
factor out common parts from mount/Makefile.am
fix HAVE_NCURSES
fix ifdef ENABLE_WIDECHAR usage
fix linking when ncurses is built with --with-termlib=tinfo
fix README filenames and add missing files to EXTRA_DISTs
fix the example configure call in README
fix the final message of autogen.sh
in configure.ac, change "po" -> "$srcdir/po"
in the clean targets use "find ... | xargs rm -f"
let configure instantiate the misc-utils/*.pl scripts
make the getopt example directory relative to datadir
merge adjacent AC_CONFIG_HEADERS and AC_CONFIG_FUNCS calls
minor fixes in configure.in
mount/Makefile.am tiny cleanup
mount/Makefile.am tiny cleanup II
move -D flags to *_CPPFLAGS
move the optimization flags to AM_CFLAGS
--prefix defaults to /usr
remove aclocal.m4 from SCM
remove AC_PROG_RANLIB
remove config.h.in from VCS
remove config/include-Makefile.am from EXTRA_DIST
remove DEFAULT_INCLUDES workaround
remove -fomit-frame-pointer
remove generated autotools stuff from git
remove po/Makevars.template from EXTRA_DIST
remove swapargs.h, move the tests to main configure.ac
rename to -ng, change maintainer name
replace AC_TRY_* by AC_*_IFELSE
s/AC_HELP_STRING/AS_HELP_STRING/
set DISTCHECK_CONFIGURE_FLAGS in top-level makefile
simplify "clean" in tests/Makefile.am
update po/POTFILES.in
use dist_example_DATA
use dist_noinst_DATA to work around the bug with dist_man_MANS
use dist_noinst_HEADERS in include/Makefile.am
use dist_usrbinexec_SCRIPTS in misc-utils/Makefile.am
check exit status of autotools
cal:
fix a segfault and -3m highlighting
ifdef cleanup, non-curses/tempcap code fixes
widechar code cleanup
cfdisk:
build-sys defines HAVE_RPMATCH, not HAVE_rpmatch
fix stupid typo in GPT checker call
chsh:
remove tailing wihit-spaces and use PATH_BSHELL
col:
getwchar() errors shouldn't be hidden
ddate:
fix compiler warnings
docs:
add the DEPRECATED file
clean up TODO file and add a new resuest for 2.14
fix info about devel/master branchs
fix URL and typos in README.devel
refresh AUTHORS file
remove deprecated section from README
update AUTHORS file
update TODO file
fdisk:
add GPT detection code
add MAC label detection
cleanup full disk detection code
fix "differ in signedness" compiler warnings
fix "type qualifiers ignored on function return type"
Makefile.am refactoring
many significant improvements and fixes to Sun label handling
move duplicate stuff from fdisk*label.h to fdisk.h
use unsigned long long instead int for sectors
getopt:
remove old unused files
hexdump:
don't use memset with zero lenght
hwclock:
add --rtc=<path> option and support for /dev/rtc0
add support for audit system
fix --systohc sets clock 0.5 seconds slow
make ggc happy and check return values from fgets, read and write
remove tailing white-spaces and clean up clock.h
ipcs:
add new tests for ipcs limits
add regression test for output headers
fix typo in Semaphore headers
max total shared memory in kbytes instead pages
login:
add audit support
add IPv6 support
add regression test for IP address checking code
attempt to run if it has no read/write access to its terminal
close PAM session after failed pam_setcred
improve work with signals
keep syslog useful for end of PAM session.
login's timeout can fail
omits PAM account validation when auth is skipped (CVE-2006-7108)
remove triiling white-spaces
update 32bit utmp correctly on 64bit system
look:
fix problem with !isalnum() words
remove tailing white-spaces
losetup:
add a new option -s
add -a option to list all used loop devices
add long options and fix man page
add support read-only loops
add to man page info about deprecated cryptoloop
man pages:
add "AVAILABILITY" section
mcookie:
remove non-linux code
misc-utils:
add scriptreplay manpage
remove old cal test
mkfs.cramfs:
cleanup HAVE_ macros usage
fix a way how mkfs works with empty files
remove hardcoded limit for directories
mkswap:
add regression test
automatically add selinux label to swapfile
avoid mkswap usage on already mounted device
gcc happy: unsigned long usage
fix libuuid usage in mkswap
more:
fix file descriptor leak
mount:
add note about /etc/mtab unreliability to mount.8
add note about fcntl/ioctl unreliability on NFS to mount.8
add -s and -f and note to man page for external mount helpers
add simple (printf-like) debug routine and --debug option
add support for context, fscontext and defcontext selinux mount options
add support for mixed usage of SPECes
add support for mtab "uhelper" option
avoid duplicate entries in mtab when mount -f
call /sbin/mount.<type> also when mounting without "-t"
clean up getfs* (fstab.c) interface
clean up info about NFS in mount.8
doesn't rpc_pipefs and nfsd on umount -a
do not treat arm/sparc specially.
don't umount sysfs when running umount -a
fix -fv so that it doesn't incorrectly spit out an error that nothing was done.
fix has_* functions (CVE-2007-0822)
fix list logic in update_mtab
fix memory usage in update_mtab
fix mtab_lock
fix typo in error message
fsprobe: add libvolume_id support
fsprobe: add libvolume_id support to configure.ac
fsprobe: make fsprobe_get_devname functions more generic
fsprobe: remove mount_guess_fstype.{c,h}
fsprobe: remove non-blkid code
fsprobe: rename files to fsprobe_*
fsprobe: rename the rest of API routines to fsprobe_*
fsprobe: use blkid cache only when really necessary
getfs_* (fstab) interface has to work with canonicalize()
kill mount_guess_rootdev
loop device race condition
needs to handle special mountprog even on guessed file systems.
parse SPEC before search in fstab
relative atime support
remove all NFS code
remove nfsmount() from sundries.h
rewrite getfs_by_specdir() without mem leaks
shared-subtree support
update mtab correctly when mount --move
use encoded labels for volume_id
use growable string for options
use loop= option when mounting by /sbin/mount.<type>
use realloc for xstrconcat functions
use verbose mode instead debug mode
namei:
fix logic and infinite loop of symlinks
new regression test
newgrp:
add support for /etc/gshadow
check result from getgrnam() more carefully
partx:
add man pages for addpart, delpart and partx
po:
rename mount/mntent.c to mount/mount_mntent.c
typo in french translation of mount error.
update po files
vipw doesn't use rpmatch, all translations have to use y/n
raw:
add file with udev rule example
don't accept raw0 as a target name
move the raw command to /sbin
update man page (about dd and O_DIRECT)
schedutils:
add support for SCHED_BATCH
define SCHED_BATCH when compile with old glibc
remove extra hyptens from man pages
taskset is independent of hardcoded NR_CPUS max
fix ionice build on sparc
setarch:
add NLS support
sfdisk:
fix "differ in signedness" compiler warnings
fix "may be used uninitialized" compiler warnings
setting default geometry values
swapon:
cleanup PATH_ macros and tailing white-spaces
does not correctly deal with symlinks
fix swapon headers and syscalls
simplify an #if
sys-utils:
added setarch command
add note about obsolete ramsize option to rdev.8
fix man page headers
move some man pages from category 8 to 1
tests:
add basic infrastructure for regression tests
add cal -1 test
add cal -3 test
add cal -y test
add expected outputs for cramfs
add functions for label, uuid and fstype detection
add hwclock systohc test
add library for LD_PRELOAD to manipulate with time() in tests
add lock_mtab() performance and reliability test
add look test for words with separator
add missing header
add mkfs.cramfs tests
add more variants to {mount,fstab}-by-{label,uuid,devname}
add mount by devname from fstab
add mount by devname test
add mount by devname with label in fstab
add mount by devname with uuid in fstab
add mount by label from fstab test
add mount by LABEL test
add mount by label with devname in fstab
add mount by label with uuid in fstab
add mount by UUID from fstab test
add mount by UUID test
add mount by uuid with devname in fstab
add mount by uuid with label in fstab
add mount /dev/symlink test
add mount --move test
add mount -o remount test
add return code
add simple helper that returns info about system
add support for fstab modification
add support for suid programs
add swapon by devname test
add swapon by UUID test
add test for /sbin/mount.<type> call
add ts_log and --verbose support
add ts_ok and ts_failed
cleanup blkid cache after test device deinitialization
code refactoring -- new ts_device_init function
code refactoring -- new ts_skip_nonroot function
code refactoring -- new ts_udev_loop_support function
enable mtablock test when uid=0 only
fix argv[] usage in mnt_test_sysinfo.c
fix dependence on blkid
fix Makefile.am (add missing tests)
fix ts_fstab_add function
"if [...]" clean up
make clean need to remove diffs and outputs
pass all arguments to ts_init, add ts_has_option function
refresh mtablock output in expected/ directory
simplify devices usage
text-utils:
fix the more command compilation against termcap
tools:
add codecheck-config that checks for {HAVE,ENABLE}_ orphans
vipw:
fix permissions (600->400) for edited /etc/[g]shodow files
wall:
fix O_NONBLOCK usage
misc:
Clean up pagesize/PAGE_SIZE usage.
clean up realpath.[ch] includes and macros
execl() should be use NULL not 0
--
Karel Zak <kzak@redhat.com>
^ permalink raw reply [flat|nested] 36+ messages in thread* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-03 22:11 [ANNOUNCE] util-linux-ng 2.13-rc1 Karel Zak
@ 2007-07-04 8:42 ` Christoph Hellwig
2007-07-04 10:34 ` David Miller
` (2 more replies)
2007-07-04 11:11 ` Jan Engelhardt
2007-07-04 17:47 ` DervishD
2 siblings, 3 replies; 36+ messages in thread
From: Christoph Hellwig @ 2007-07-04 8:42 UTC (permalink / raw)
To: Karel Zak; +Cc: List util-linux-ng, linux-kernel, linux-fsdevel
On Wed, Jul 04, 2007 at 12:11:56AM +0200, Karel Zak wrote:
> mount(8) doesn't include filesystem detection code anymore. You
> have to compile --with-fsprobe={blkid,volume_id}, and libblkid
> (e2fsprogs) or libvolume_id (udev >= v110) is required.
Sorry, but it's really annoying to pull in a filesystem-specific devel
package for that. Having a library is fine, but please move the library
into util-linux so it's always available without another dependency. That
way xfsprogs could for example drop it's own detection library aswell.
> The package build system is now based on autotools. The build system
> supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
> SUID_LDFLAGS). For more details see the README file
And this is really dumb. autotools is a completely pain in the ass and
not useful at all for linux-only tools.
^ permalink raw reply [flat|nested] 36+ messages in thread* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-04 8:42 ` Christoph Hellwig
@ 2007-07-04 10:34 ` David Miller
2007-07-05 16:41 ` Mike Frysinger
2007-07-05 23:03 ` Jeff Garzik
2 siblings, 0 replies; 36+ messages in thread
From: David Miller @ 2007-07-04 10:34 UTC (permalink / raw)
To: hch; +Cc: kzak, util-linux-ng, linux-kernel, linux-fsdevel
From: Christoph Hellwig <hch@infradead.org>
Date: Wed, 4 Jul 2007 09:42:11 +0100
> On Wed, Jul 04, 2007 at 12:11:56AM +0200, Karel Zak wrote:
> > mount(8) doesn't include filesystem detection code anymore. You
> > have to compile --with-fsprobe={blkid,volume_id}, and libblkid
> > (e2fsprogs) or libvolume_id (udev >= v110) is required.
>
> Sorry, but it's really annoying to pull in a filesystem-specific devel
> package for that. Having a library is fine, but please move the library
> into util-linux so it's always available without another dependency. That
> way xfsprogs could for example drop it's own detection library aswell.
I totally agree with Christophe, this dependency is a complete
pain for trying to do util-linux-ng development. I meant to
complain about this myself.
> > The package build system is now based on autotools. The build system
> > supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
> > SUID_LDFLAGS). For more details see the README file
>
> And this is really dumb. autotools is a completely pain in the ass and
> not useful at all for linux-only tools.
I second this sentiment as well. It's not like we expect this stuff
to get used on other systems at all, and the only thing it's getting
used for really is to detect the awful external blkid/volume_id
dependencies.
I totally think this stuff can and should be completely eliminated.
^ permalink raw reply [flat|nested] 36+ messages in thread* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-04 8:42 ` Christoph Hellwig
2007-07-04 10:34 ` David Miller
@ 2007-07-05 16:41 ` Mike Frysinger
2007-07-05 18:04 ` Andreas Dilger
2007-07-05 21:30 ` Karel Zak
2007-07-05 23:03 ` Jeff Garzik
2 siblings, 2 replies; 36+ messages in thread
From: Mike Frysinger @ 2007-07-05 16:41 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Karel Zak, List util-linux-ng, linux-kernel, linux-fsdevel
[-- Attachment #1: Type: text/plain, Size: 1754 bytes --]
On Wednesday 04 July 2007, Christoph Hellwig wrote:
> On Wed, Jul 04, 2007 at 12:11:56AM +0200, Karel Zak wrote:
> > mount(8) doesn't include filesystem detection code anymore. You
> > have to compile --with-fsprobe={blkid,volume_id}, and libblkid
> > (e2fsprogs) or libvolume_id (udev >= v110) is required.
>
> Sorry, but it's really annoying to pull in a filesystem-specific devel
> package for that. Having a library is fine, but please move the library
> into util-linux so it's always available without another dependency.
ugh, moving libraries which are already actively maintained by other core
projects into util-linux is so not a good idea (ignoring the fact that it'd
easily be a pita/waste for distro maintainers)
> That
> way xfsprogs could for example drop it's own detection library aswell.
i dont really think this is dependent on util-linux at all. nothing is
stopping xfsprogs from depending on udev or e2fsprogs now.
> > The package build system is now based on autotools. The build system
> > supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
> > SUID_LDFLAGS). For more details see the README file
>
> And this is really dumb. autotools is a completely pain in the ass and
not really at all. hand written build systems are a constant source of pain
for distribution maintainers and people trying to cross-compile (and the one
that was in util-linux had many problems in both these areas).
> not useful at all for linux-only tools.
incorrect. linux changes over time as does the kernel/libc/architecture
api's. look at the old util-linux build system -- it had a crappy hand
written configure script to try and detect all these different issues.
-mike
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 827 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-05 16:41 ` Mike Frysinger
@ 2007-07-05 18:04 ` Andreas Dilger
2007-07-05 21:30 ` Karel Zak
1 sibling, 0 replies; 36+ messages in thread
From: Andreas Dilger @ 2007-07-05 18:04 UTC (permalink / raw)
To: Mike Frysinger
Cc: Christoph Hellwig, Karel Zak, List util-linux-ng, linux-kernel,
linux-fsdevel
On Jul 05, 2007 12:41 -0400, Mike Frysinger wrote:
> On Wednesday 04 July 2007, Christoph Hellwig wrote:
> > Sorry, but it's really annoying to pull in a filesystem-specific devel
> > package for that. Having a library is fine, but please move the library
> > into util-linux so it's always available without another dependency.
>
> ugh, moving libraries which are already actively maintained by other core
> projects into util-linux is so not a good idea (ignoring the fact that it'd
> easily be a pita/waste for distro maintainers)
Some distros (Debian and SuSE I think) split the e2fsprogs libraries
into separate packages so that you are not depending on "e2fsprogs",
but rather "libuuid" and/or "libblkid".
> > That way xfsprogs could for example drop it's own detection library aswell.
>
> i dont really think this is dependent on util-linux at all. nothing is
> stopping xfsprogs from depending on udev or e2fsprogs now.
In fact, Eric Sandeen and I discussed splitting the xfsprogs "libdisk"
(or similar, it detects RAID geometry for DM/MD/etc) into a standalone
library so that e2fsprogs could use it. The only issue is the increased
maintenance and packaging of separate libraries.
Cheers, Andreas
--
Andreas Dilger
Principal Software Engineer
Cluster File Systems, Inc.
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-05 16:41 ` Mike Frysinger
2007-07-05 18:04 ` Andreas Dilger
@ 2007-07-05 21:30 ` Karel Zak
2007-07-06 0:38 ` Matthew Wilcox
1 sibling, 1 reply; 36+ messages in thread
From: Karel Zak @ 2007-07-05 21:30 UTC (permalink / raw)
To: Mike Frysinger
Cc: Christoph Hellwig, List util-linux-ng, linux-kernel,
linux-fsdevel
On Thu, Jul 05, 2007 at 12:41:59PM -0400, Mike Frysinger wrote:
> On Wednesday 04 July 2007, Christoph Hellwig wrote:
> > On Wed, Jul 04, 2007 at 12:11:56AM +0200, Karel Zak wrote:
> > > mount(8) doesn't include filesystem detection code anymore. You
> > > have to compile --with-fsprobe={blkid,volume_id}, and libblkid
> > > (e2fsprogs) or libvolume_id (udev >= v110) is required.
> >
> > Sorry, but it's really annoying to pull in a filesystem-specific devel
> > package for that. Having a library is fine, but please move the library
> > into util-linux so it's always available without another dependency.
>
> ugh, moving libraries which are already actively maintained by other core
> projects into util-linux is so not a good idea (ignoring the fact that it'd
> easily be a pita/waste for distro maintainers)
Yes. We have good experience with libblkid and libvolume_id. This
concept is nothing new (see current RHEL, FC, Suse, ...). The change
is that we've removed old, useless and unmaintained FS detection code
from util-linux.
I think move the library to util-linux is really bad idea. A better
idea is detach libblkid or libvolume_id (or both) from e2fsprogs/udev
and create an independent libfsprobe library and use everywhere
(e2fsprogs, udev, util-linux) this library only.
> > > The package build system is now based on autotools. The build system
> > > supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
> > > SUID_LDFLAGS). For more details see the README file
> >
> > And this is really dumb. autotools is a completely pain in the ass and
Well, Adrian Bunk added autotools stuff to util-linux during his work
on v2.13. This stuff has been fixed and stabilized in util-linux-ng
v2.13.
I'm not fanatical autotools protagonist, but it seems useful in
util-linux. We will see...
I'm ready to change or fix arbitrary thing in util-linux-ng, but I
always need a real reason -- bug report, new feature, or so. This
discussion is about impressions and feelings only.
> > not useful at all for linux-only tools.
>
> incorrect. linux changes over time as does the kernel/libc/architecture
> api's. look at the old util-linux build system -- it had a crappy hand
> written configure script to try and detect all these different issues.
Right. The autotools provides more features that portability only.
Karel
--
Karel Zak <kzak@redhat.com>
^ permalink raw reply [flat|nested] 36+ messages in thread* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-05 21:30 ` Karel Zak
@ 2007-07-06 0:38 ` Matthew Wilcox
0 siblings, 0 replies; 36+ messages in thread
From: Matthew Wilcox @ 2007-07-06 0:38 UTC (permalink / raw)
To: Karel Zak
Cc: Mike Frysinger, Christoph Hellwig, List util-linux-ng,
linux-kernel, linux-fsdevel
On Thu, Jul 05, 2007 at 11:30:20PM +0200, Karel Zak wrote:
> > > > The package build system is now based on autotools. The build system
> > > > supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
> > > > SUID_LDFLAGS). For more details see the README file
> > >
> > > And this is really dumb. autotools is a completely pain in the ass and
>
> Well, Adrian Bunk added autotools stuff to util-linux during his work
> on v2.13. This stuff has been fixed and stabilized in util-linux-ng
> v2.13.
>
> I'm not fanatical autotools protagonist, but it seems useful in
> util-linux. We will see...
>
> I'm ready to change or fix arbitrary thing in util-linux-ng, but I
> always need a real reason -- bug report, new feature, or so. This
> discussion is about impressions and feelings only.
No, it's based on long, hard and painful experiences attempting to debug
the fuckups that autoconf creates when it goes wrong.
--
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-04 8:42 ` Christoph Hellwig
2007-07-04 10:34 ` David Miller
2007-07-05 16:41 ` Mike Frysinger
@ 2007-07-05 23:03 ` Jeff Garzik
2007-07-06 9:01 ` Gerd Hoffmann
2 siblings, 1 reply; 36+ messages in thread
From: Jeff Garzik @ 2007-07-05 23:03 UTC (permalink / raw)
To: Christoph Hellwig, Karel Zak, List util-linux-ng, linux-kernel,
linux-fsdevel
Christoph Hellwig wrote:
> On Wed, Jul 04, 2007 at 12:11:56AM +0200, Karel Zak wrote:
>> The package build system is now based on autotools. The build system
>> supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
>> SUID_LDFLAGS). For more details see the README file
>
> And this is really dumb. autotools is a completely pain in the ass and
> not useful at all for linux-only tools.
A myth. It is quite useful for packagers, because of the high Just
Works(tm) factor. After porting an entire across several revisions of a
distro, the autotools-based packages are the ones that work out of the
box 90% of the time.
The other 90% of _my_ time comes from annoying people who roll their own
Makefile/build solution, which the packager has to then learn.
It's just not scalable for people to keep building their own build
solutions.
Jeff
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-05 23:03 ` Jeff Garzik
@ 2007-07-06 9:01 ` Gerd Hoffmann
2007-07-06 9:16 ` Jeff Garzik
2007-07-06 19:35 ` Joel Becker
0 siblings, 2 replies; 36+ messages in thread
From: Gerd Hoffmann @ 2007-07-06 9:01 UTC (permalink / raw)
To: Jeff Garzik
Cc: Christoph Hellwig, Karel Zak, List util-linux-ng, linux-kernel,
linux-fsdevel
Jeff Garzik wrote:
> Christoph Hellwig wrote:
>> And this is really dumb. autotools is a completely pain in the ass and
>> not useful at all for linux-only tools.
>
> A myth. It is quite useful for packagers, because of the high Just
> Works(tm) factor. After porting an entire across several revisions of a
> distro, the autotools-based packages are the ones that work out of the
> box 90% of the time.
And the 10% where it doesn't work it is a real pain to figure what goes
wrong due to the completely unreadable Makefiles generated by autotools.
After all they are not Makefiles, they are shellscripts embedded into
Makefiles.
> The other 90% of _my_ time comes from annoying people who roll their own
> Makefile/build solution, which the packager has to then learn.
Well, it's not *that* hard to write makefiles which follow the usual
gnuish conventions, so stuff like "make DESTDIR=/tmp/buildroot install"
works just fine. That isn't a reason to use autotools. Especially as
people get that wrong *even with* autotools from time to time ...
cheers,
Gerd
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-06 9:01 ` Gerd Hoffmann
@ 2007-07-06 9:16 ` Jeff Garzik
2007-07-06 19:35 ` Joel Becker
1 sibling, 0 replies; 36+ messages in thread
From: Jeff Garzik @ 2007-07-06 9:16 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: Christoph Hellwig, Karel Zak, List util-linux-ng, linux-kernel,
linux-fsdevel
Gerd Hoffmann wrote:
> Jeff Garzik wrote:
>> Christoph Hellwig wrote:
>>> And this is really dumb. autotools is a completely pain in the ass and
>>> not useful at all for linux-only tools.
>> A myth. It is quite useful for packagers, because of the high Just
>> Works(tm) factor. After porting an entire across several revisions of a
>> distro, the autotools-based packages are the ones that work out of the
>> box 90% of the time.
>
> And the 10% where it doesn't work it is a real pain to figure what goes
> wrong due to the completely unreadable Makefiles generated by autotools.
> After all they are not Makefiles, they are shellscripts embedded into
> Makefiles.
>
>> The other 90% of _my_ time comes from annoying people who roll their own
>> Makefile/build solution, which the packager has to then learn.
>
> Well, it's not *that* hard to write makefiles which follow the usual
> gnuish conventions, so stuff like "make DESTDIR=/tmp/buildroot install"
> works just fine. That isn't a reason to use autotools. Especially as
> people get that wrong *even with* autotools from time to time ...
It's not _just_ makefiles, though. Packaging systems know what to do
with configure scripts, and automatically plug that into their systems,
e.g. with rpm's %configure, %make_install, etc.
Having ported an entire distro, the time savings with autotools [OR
ANOTHER STANDARD BUILD/CONFIGURE SYSTEM] are very real. Similarly, the
time sink with each project doing its own home-rolled build/configure
system is also very real.
Jeff
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-06 9:01 ` Gerd Hoffmann
2007-07-06 9:16 ` Jeff Garzik
@ 2007-07-06 19:35 ` Joel Becker
2007-07-09 7:20 ` Gerd Hoffmann
1 sibling, 1 reply; 36+ messages in thread
From: Joel Becker @ 2007-07-06 19:35 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: Jeff Garzik, Christoph Hellwig, Karel Zak, List util-linux-ng,
linux-kernel, linux-fsdevel
On Fri, Jul 06, 2007 at 11:01:07AM +0200, Gerd Hoffmann wrote:
> And the 10% where it doesn't work it is a real pain to figure what goes
> wrong due to the completely unreadable Makefiles generated by autotools.
> After all they are not Makefiles, they are shellscripts embedded into
> Makefiles.
Do not mistake the use of autoconf with automake. automake
generates the unreadable Makefiles. You can quite easily create a
useful Makefile yourself and use autoconf to select installation
locations, detect features of older/newer libcs, etc. See
http://oss.oracle.com/projects/makebo/ for an example of a build system
that doesn't use automake, but allows for autoconf to do build-time
configuration (an example user of makebo is ocfs2-tools, see
http://oss.oracle.com/projects/ocfs2-tools/src/trunk/).
And if you think that all packages should Just Work on all
Linuxen, with out any build-time detection, try determining the
differing udev layouts of FC6, FC7, Debian, Ubuntu, SuSE9, SuSE10, etc.
Or where manpages go. The %configure of RPM specfiles and the
dh_installman of debian packages handle this for you...often because
they can use expected behavior of your build system. What about
futexes? Older systems don't have them. Gotta detect that.
Joel
--
"I'm drifting and drifting
Just like a ship out on the sea.
Cause I ain't got nobody, baby,
In this world to care for me."
Joel Becker
Principal Software Developer
Oracle
E-mail: joel.becker@oracle.com
Phone: (650) 506-8127
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-06 19:35 ` Joel Becker
@ 2007-07-09 7:20 ` Gerd Hoffmann
2007-07-09 20:18 ` Mike Frysinger
0 siblings, 1 reply; 36+ messages in thread
From: Gerd Hoffmann @ 2007-07-09 7:20 UTC (permalink / raw)
To: Gerd Hoffmann, Jeff Garzik, Christoph Hellwig, Karel Zak,
List util-linux-ng, linux-kernel, linux-fsdevel
Joel Becker wrote:
> On Fri, Jul 06, 2007 at 11:01:07AM +0200, Gerd Hoffmann wrote:
>> And the 10% where it doesn't work it is a real pain to figure what goes
>> wrong due to the completely unreadable Makefiles generated by autotools.
>> After all they are not Makefiles, they are shellscripts embedded into
>> Makefiles.
>
> Do not mistake the use of autoconf with automake. automake
> generates the unreadable Makefiles. You can quite easily create a
> useful Makefile yourself and use autoconf to select installation
> locations, detect features of older/newer libcs, etc.
Sure. I have some projects using autoconf only. 90% of the projects
use both though, autoconf-only is quite rare these days (used to be
different because autoconf was the first ...).
> And if you think that all packages should Just Work on all
> Linuxen, with out any build-time detection, try determining the
> differing udev layouts of FC6, FC7, Debian, Ubuntu, SuSE9, SuSE10, etc.
s/build/run/ time check IMHO. Otherwise things blow up if the user
upgrades fc6 to 7 ...
> Or where manpages go.
/usr/share/man everythere, since years. Maybe except Debian because
they first discuss 5 years how to handle that ;)
> What about
> futexes? Older systems don't have them. Gotta detect that.
Sure, there are some things left you might want to check for even for
linux-only projects. If it is only whenever some library is installed.
autoconf will do that, sure. It's still quite some overkill in many
cases IMHO. On smaller projects the configure script can easily take
more than 80% of the tarball size ...
cheers,
Gerd
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-09 7:20 ` Gerd Hoffmann
@ 2007-07-09 20:18 ` Mike Frysinger
0 siblings, 0 replies; 36+ messages in thread
From: Mike Frysinger @ 2007-07-09 20:18 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: Jeff Garzik, Christoph Hellwig, Karel Zak, List util-linux-ng,
linux-kernel, linux-fsdevel
[-- Attachment #1: Type: text/plain, Size: 402 bytes --]
On Monday 09 July 2007, Gerd Hoffmann wrote:
> Joel Becker wrote:
> > And if you think that all packages should Just Work on all
> > Linuxen, with out any build-time detection, try determining the
> > differing udev layouts of FC6, FC7, Debian, Ubuntu, SuSE9, SuSE10, etc.
>
> s/build/run/ time check IMHO. Otherwise things blow up if the user
> upgrades fc6 to 7 ...
API's change, ABI's dont
-mike
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 827 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-03 22:11 [ANNOUNCE] util-linux-ng 2.13-rc1 Karel Zak
2007-07-04 8:42 ` Christoph Hellwig
@ 2007-07-04 11:11 ` Jan Engelhardt
2007-07-05 17:22 ` H. Peter Anvin
2007-07-04 17:47 ` DervishD
2 siblings, 1 reply; 36+ messages in thread
From: Jan Engelhardt @ 2007-07-04 11:11 UTC (permalink / raw)
To: Karel Zak; +Cc: List util-linux-ng, linux-kernel, linux-fsdevel
On Jul 4 2007 00:11, Karel Zak wrote:
>newgrp:
> add support for /etc/gshadow
> check result from getgrnam() more carefully
Hm, gshadow looks like it is really obsolete. (There is no such file anymore in
suse releases since a long while. Previously, gshadow was filled with all the
groups that existed.)
Jan
--
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-04 11:11 ` Jan Engelhardt
@ 2007-07-05 17:22 ` H. Peter Anvin
0 siblings, 0 replies; 36+ messages in thread
From: H. Peter Anvin @ 2007-07-05 17:22 UTC (permalink / raw)
To: Jan Engelhardt; +Cc: Karel Zak, List util-linux-ng, linux-kernel, linux-fsdevel
Jan Engelhardt wrote:
> On Jul 4 2007 00:11, Karel Zak wrote:
>> newgrp:
>> add support for /etc/gshadow
>> check result from getgrnam() more carefully
>
> Hm, gshadow looks like it is really obsolete. (There is no such file anymore in
> suse releases since a long while. Previously, gshadow was filled with all the
> groups that existed.)
>
gshadow is used when you have groups which have passwords, which is very
rare in practice but permitted in theory.
-hpa
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-03 22:11 [ANNOUNCE] util-linux-ng 2.13-rc1 Karel Zak
2007-07-04 8:42 ` Christoph Hellwig
2007-07-04 11:11 ` Jan Engelhardt
@ 2007-07-04 17:47 ` DervishD
2007-07-05 7:01 ` Nix
2 siblings, 1 reply; 36+ messages in thread
From: DervishD @ 2007-07-04 17:47 UTC (permalink / raw)
To: Karel Zak; +Cc: List util-linux-ng, linux-kernel, linux-fsdevel
Hi Karel :)
* Karel Zak <kzak@redhat.com> dixit:
> The package build system is now based on autotools. The build system
> supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
> SUID_LDFLAGS). For more details see the README file
If you want to have configurable installation directories and
configurable settings for building but with the pain of autotools, you
can give "mobs" a try if you want. You will find in my homepage (see my
signature below). If you find it so much big and/or you think you will
be changing a pain for another pain, I can help porting.
Anyway, if you don't like mobs or you just don't want to try it,
that's fine, but please don't use autotools, it doesn't make much sense
for a linux only project, since you will be using only the "directory
choosing" part of autotools. Maybe a hand made script will help (and I
can help with that, too) if you just want to have selectable directories
and CFLAGS support...
And thanks for util-linux-ng, I was waiting for them :))
Raúl Núñez de Arenas Coronado
--
Linux Registered User 88736 | http://www.dervishd.net
It's my PC and I'll cry if I want to... RAmen!
^ permalink raw reply [flat|nested] 36+ messages in thread* Re: [ANNOUNCE] util-linux-ng 2.13-rc1
2007-07-04 17:47 ` DervishD
@ 2007-07-05 7:01 ` Nix
0 siblings, 0 replies; 36+ messages in thread
From: Nix @ 2007-07-05 7:01 UTC (permalink / raw)
To: Karel Zak; +Cc: List util-linux-ng, linux-kernel, linux-fsdevel
On 4 Jul 2007, DervishD stated:
> Anyway, if you don't like mobs or you just don't want to try it,
> that's fine, but please don't use autotools, it doesn't make much sense
> for a linux only project, since you will be using only the "directory
> choosing" part of autotools. Maybe a hand made script will help (and I
Oh, yeah, great, another hand-rolled build system. That's *juwt* what
those of us who have autotools working well (with config.site's that
do all we need and then some) are looking forward to.
There are advantages to standardization, you know. A *lot* of
autobuilders know how to make autoconf-generated configure scripts jump
through hoops. I was downright *happy* when util-linux was
autoconfiscated: I could ditch the code to handle automatic
configuration of yet another one-package hand-rolled build system.
--
`... in the sense that dragons logically follow evolution so they would
be able to wield metal.' --- Kenneth Eng's colourless green ideas sleep
furiously
^ permalink raw reply [flat|nested] 36+ messages in thread
[parent not found: <8CYT9-4Ou-23@gated-at.bofh.it>]
end of thread, other threads:[~2007-07-09 20:18 UTC | newest]
Thread overview: 36+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-03 22:11 [ANNOUNCE] util-linux-ng 2.13-rc1 Karel Zak
2007-07-04 8:42 ` Christoph Hellwig
2007-07-04 10:34 ` David Miller
2007-07-05 16:41 ` Mike Frysinger
2007-07-05 18:04 ` Andreas Dilger
2007-07-05 21:30 ` Karel Zak
2007-07-06 0:38 ` Matthew Wilcox
2007-07-05 23:03 ` Jeff Garzik
2007-07-06 9:01 ` Gerd Hoffmann
2007-07-06 9:16 ` Jeff Garzik
2007-07-06 19:35 ` Joel Becker
2007-07-09 7:20 ` Gerd Hoffmann
2007-07-09 20:18 ` Mike Frysinger
2007-07-04 11:11 ` Jan Engelhardt
2007-07-05 17:22 ` H. Peter Anvin
2007-07-04 17:47 ` DervishD
2007-07-05 7:01 ` Nix
[not found] <8CYT9-4Ou-23@gated-at.bofh.it>
[not found] ` <8Dh9k-8lT-3@gated-at.bofh.it>
[not found] ` <8DtDz-3xC-15@gated-at.bofh.it>
2007-07-05 14:50 ` Bodo Eggert
2007-07-05 19:20 ` DervishD
2007-07-05 20:42 ` Nix
2007-07-05 20:55 ` Bernhard Walle
2007-07-06 6:42 ` Nix
2007-07-06 7:19 ` Mike Frysinger
2007-07-06 22:43 ` Nix
2007-07-06 6:41 ` DervishD
2007-07-06 7:17 ` Mike Frysinger
2007-07-06 10:43 ` DervishD
2007-07-06 12:17 ` Bodo Eggert
2007-07-06 12:51 ` DervishD
2007-07-05 20:36 ` Nix
2007-07-05 21:30 ` Mike Frysinger
2007-07-05 21:34 ` Nix
2007-07-05 21:47 ` Mike Frysinger
2007-07-06 0:30 ` Bryan Henderson
2007-07-06 1:16 ` Mike Frysinger
2007-07-06 16:50 ` Bryan Henderson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox