Re: [gentoo-dev] add built_with_use_die() to eutils.eclass ?

2007-05-18 Thread Doug Goldstein
Petteri Räty wrote:
 Marius Mauch kirjoitti:
   
 On Mon, 23 Apr 2007 23:45:48 +0200
 dju` [EMAIL PROTECTED] wrote:

 
 eerror Your ${package} package has been built without
 eerror ${func} support, please enable the '${use_flag}' USE flag 
 and
 eerror re-emerge ${package}.
 elog You can enable this USE flag either globally in 
 /etc/make.conf,
 elog or just for specific packages in /etc/portage/package.use.
 die ${package} missing ${func} support
   
 A little detail about elog: You should not use different elog functions
 (eerror, elog, ewarn, ...) within the same message as they may appear
 out of order in the final log (e.g. the elog lines might appear before
 the eerror lines). This is because messages of the same loglevel and in
 the same phase are grouped together. It's an implementation detail that
 might be changed in future versions, but for now you'll have to live
 with it.

 Also I don't see much use in explaining how to enable a use flag inside
 ebuilds, at most there should be a pointer to the real documentation
 IMO.

 Marius
 

 Any updates on this?

 [EMAIL PROTECTED] /usr/portage/eclass $ grep built_with_use_die -r .
 [EMAIL PROTECTED] /usr/portage/eclass $

 I for one would use it if it existed.

 Regards,
 Petteri

   
built_with_use sys-apps/pciutils zlib  die You need to build
sys-apps/pciutils without zlib

WHY do we need YET another function for such a simple construct?

built_with_use is already available and very powerful.

For example, HAL does..

built_with_use --missing false sys-apps/pciutils zlib

If the USE flag is missing entirely, it'll treat it like it's disabled
because old versions didn't have the zlib USE flag and didn't gzip their
data. Some packages it might be the other way around so you can pass
true instead.

Adding built_with_use_die is utterly pointless.

-- 
[EMAIL PROTECTED] mailing list



Re: [gentoo-dev] add built_with_use_die() to eutils.eclass ?

2007-05-17 Thread Petteri Räty
Marius Mauch kirjoitti:
 On Mon, 23 Apr 2007 23:45:48 +0200
 dju` [EMAIL PROTECTED] wrote:
 
 eerror Your ${package} package has been built without
 eerror ${func} support, please enable the '${use_flag}' USE flag 
 and
 eerror re-emerge ${package}.
 elog You can enable this USE flag either globally in 
 /etc/make.conf,
 elog or just for specific packages in /etc/portage/package.use.
 die ${package} missing ${func} support
 
 A little detail about elog: You should not use different elog functions
 (eerror, elog, ewarn, ...) within the same message as they may appear
 out of order in the final log (e.g. the elog lines might appear before
 the eerror lines). This is because messages of the same loglevel and in
 the same phase are grouped together. It's an implementation detail that
 might be changed in future versions, but for now you'll have to live
 with it.
 
 Also I don't see much use in explaining how to enable a use flag inside
 ebuilds, at most there should be a pointer to the real documentation
 IMO.
 
 Marius

Any updates on this?

[EMAIL PROTECTED] /usr/portage/eclass $ grep built_with_use_die -r .
[EMAIL PROTECTED] /usr/portage/eclass $

I for one would use it if it existed.

Regards,
Petteri



signature.asc
Description: OpenPGP digital signature


Re: [gentoo-dev] add built_with_use_die() to eutils.eclass ?

2007-04-24 Thread Julien Allanos \(dju`\)
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Lars Weiler a écrit :
 * dju` [EMAIL PROTECTED] [07/04/23 23:45 +0200]:
 # Generate a standard error message for missing USE flags
 # in existing packages, and die.
 
 I dislike that an emerge process dies when a use-flag is not
 set (okay, it will die otherwise later with the package that
 needs the dependency with that special use-flag built).  It
 should be better to break with an appropriate message
 _before_ anything will be compiled.  Let's say, directly
 after portage has calculated the dependencies.
 
 Your proposal looks like a quick fix for a feature portage
 can't handle yet.  But your attached list of packages which
 already use that behaviour is already quite long and so you
 better should convince the portage-devs to include
 built-use-flags into the dependency calculation.

Yes it's a quick fix, just as built_with_use() is. But before Portage
know how to handle USE deps, is it worth adding built_with_use_die() to
eutils.eclass and possibly fixing a lot of ebuilds ?
- --
Julien Allanos (dju`)
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGLbsngzJGpDypHxkRArTHAJ9RJIPEQjgqmv6i5/op4xqawoq2KgCgx3bG
7hSshEgG5HRVV5kD6FY1KyE=
=K8xP
-END PGP SIGNATURE-
-- 
[EMAIL PROTECTED] mailing list



Re: [gentoo-dev] add built_with_use_die() to eutils.eclass ?

2007-04-24 Thread Marius Mauch
On Mon, 23 Apr 2007 23:45:48 +0200
dju` [EMAIL PROTECTED] wrote:

 eerror Your ${package} package has been built without
 eerror ${func} support, please enable the '${use_flag}' USE flag and
 eerror re-emerge ${package}.
 elog You can enable this USE flag either globally in /etc/make.conf,
 elog or just for specific packages in /etc/portage/package.use.
 die ${package} missing ${func} support

A little detail about elog: You should not use different elog functions
(eerror, elog, ewarn, ...) within the same message as they may appear
out of order in the final log (e.g. the elog lines might appear before
the eerror lines). This is because messages of the same loglevel and in
the same phase are grouped together. It's an implementation detail that
might be changed in future versions, but for now you'll have to live
with it.

Also I don't see much use in explaining how to enable a use flag inside
ebuilds, at most there should be a pointer to the real documentation
IMO.

Marius
-- 
[EMAIL PROTECTED] mailing list



[gentoo-dev] add built_with_use_die() to eutils.eclass ?

2007-04-23 Thread dju`
Hello,

I'd like to add the following function to eutils.eclass :

# Generate a standard error message for missing USE flags
# in existing packages, and die.
#
# Usage: built_with_use_die category/package functionality [USE flag]
#ex: built_with_use_die dev-util/subversion python
#or: built_with_use_die net-www/apache LDAP ldap
#
# Typical usage:
#   if ! built_with_use dev-util/subversion python ; then
#built_with_use_die dev-util/subversion python
#   fi
#
# Note: when USE flag is not specified, functionality is used for the USE 
flag name.
built_with_use_die() {
local package=$1
local func=$2
local use_flag=$3

[[ -z ${use_flag} ]]  use_flag=${func}

eerror Your ${package} package has been built without
eerror ${func} support, please enable the '${use_flag}' USE flag and
eerror re-emerge ${package}.
elog You can enable this USE flag either globally in /etc/make.conf,
elog or just for specific packages in /etc/portage/package.use.
die ${package} missing ${func} support
}

This function is already used in latest www-apps/trac ebuilds. The following 
packages might be concerned, i.e. packages that are currently using 
built_with_use() :

app-admin/system-config-httpd
app-admin/kedpm
app-admin/sabayon
app-admin/analog
app-admin/diradm
app-admin/moodss
app-admin/puppet
app-admin/keepassx
app-admin/webalizer
app-backup/bobs
app-cdr/k3b
app-cdr/dvdshrink
app-crypt/xca
app-crypt/gnupg
app-doc/kchmviewer
app-editors/joe
app-editors/gobby
app-emacs/emacs-w3m
app-emulation/wine
app-emulation/crossover-office-bin
app-emulation/crossover-office-pro-bin
app-emulation/xen-tools
app-i18n/uim
app-i18n/scim-bridge
app-i18n/scim-qtimm
app-misc/g15composer
app-misc/beagle
app-misc/gramps
app-misc/tracker
app-misc/tomboy
app-misc/webcomics-collector
app-office/krita
app-office/koffice
app-office/kmymoney2
app-office/tinyerp-server
app-office/gnucash
app-office/mozilla-sunbird
app-office/gnumeric
app-office/qbankmanager
app-pda/libsyncml
app-pda/libopensync-plugin-syncml
app-pda/libopensync-plugin-irmc
app-portage/elogv
app-portage/esearch
app-portage/porthole
app-portage/layman
app-text/an
app-text/xdvik
app-text/bibletime
app-text/biblestudy
app-text/evince
app-text/enscript
app-text/epdfview
app-text/gnome-doc-utils
dev-cpp/Ice
dev-cpp/libthrowable
dev-db/pgadmin3
dev-dotnet/galago-sharp
dev-games/ogre
dev-haskell/wxhaskell
dev-java/cairo-java
dev-java/velocity
dev-lang/lazarus
dev-lang/mercury-extras
dev-libs/g-wrap
dev-libs/m17n-lib
dev-lisp/sbcl
dev-ml/findlib
dev-ml/lablgl
dev-ml/ocamlnet
dev-php4/php-java-bridge
dev-php5/pecl-pdo-odbc
dev-php5/pecl-pdo-oci
dev-php5/php-qt
dev-php5/pecl-pdo-sqlite
dev-php5/pecl-pdo
dev-php5/pecl-pdo-dblib
dev-php5/pecl-pdo-mysql
dev-php5/pecl-pdo-pgsql
dev-python/pymssql
dev-python/pyzor
dev-python/soappy
dev-python/pyopengl
dev-python/imaging
dev-python/wxpython
dev-python/xapwrap
dev-python/telepathy-python
dev-ruby/ruby-gd
dev-ruby/sqlite3-ruby
dev-tcltk/thread
dev-tinyos/tos-getenv
dev-tinyos/tos-scripts
dev-util/meld
dev-util/pida
dev-util/source-highlight
dev-util/documancer
dev-util/dialog
dev-util/rapidsvn
dev-util/imediff2
dev-util/svnmailer
games-action/rrootage
games-action/powermanga
games-action/noiz2sa
games-arcade/frozen-bubble
games-arcade/supertux
games-arcade/pycadia
games-arcade/solarwolf
games-arcade/defendguin
games-arcade/project-starfighter
games-arcade/stepmania
games-arcade/smclone
games-arcade/tomatoes
games-arcade/monster-masher
games-arcade/ceferino
games-emulation/dosbox-cvs
games-emulation/dosbox
games-fps/qudos
games-fps/quake3-bin
games-fps/duke3d
games-fps/quake1-data
games-fps/quake2-data
games-fps/quake2-icculus
games-fps/doom3-dungeon
games-kids/cubetest
games-mud/lyntin
games-puzzle/xye
games-puzzle/twindistress
games-puzzle/flobopuyo
games-puzzle/monsterz
games-rpg/nwn
games-rpg/tmw
games-rpg/xu4
games-rpg/nwn-cep
games-simulation/gl117
games-simulation/openttd
games-simulation/lincity-ng
games-simulation/planets
games-sports/ultimatestunts
games-strategy/freelords
games-strategy/wesnoth
gnome-extra/evolution-data-server
gnome-extra/hal-device-manager
gnome-extra/gnome-games
gnome-extra/evolution-exchange
kde-base/kpdf
kde-base/kdebase
kde-base/kdelibs
kde-base/kdegraphics
kde-base/kopete
kde-base/kghostview
kde-base/kdemultimedia-arts
kde-base/kdenetwork
kde-base/kdebase-kioslaves
kde-misc/tork
kde-misc/kompose
kde-misc/kdnssd-avahi
mail-client/mozilla-thunderbird
mail-client/evolution
media-fonts/acroread-asianfonts
media-gfx/splashutils
media-gfx/gimp
media-gfx/pstoedit
media-gfx/gimp-print
media-gfx/hugin
media-gfx/graphviz
media-gfx/asymptote
media-gfx/f-spot
media-gfx/kphotoalbum
media-libs/mesa
media-libs/libipoddevice
media-libs/giblib
media-libs/libquicktime
media-libs/openinventor
media-libs/openexr
media-libs/ploticus
media-plugins/vdr-softdevice
media-plugins/kipi-plugins
media-plugins/quodlibet-trayicon
media-plugins/vdr-weatherng

Re: [gentoo-dev] add built_with_use_die() to eutils.eclass ?

2007-04-23 Thread Petteri Räty
dju` kirjoitti:
 Hello,
 
 I'd like to add the following function to eutils.eclass :
 
 # Generate a standard error message for missing USE flags
 # in existing packages, and die.
 #
 # Usage: built_with_use_die category/package functionality [USE flag]
 #ex: built_with_use_die dev-util/subversion python
 #or: built_with_use_die net-www/apache LDAP ldap
 #
 # Typical usage:
 #   if ! built_with_use dev-util/subversion python ; then
 #built_with_use_die dev-util/subversion python
 #   fi
 #

I think we should just call built_with_use inside built_with_use_die so
it becomes just built_with_use_die dev-util/subversion python.

Regards,
Petteri



signature.asc
Description: OpenPGP digital signature


Re: [gentoo-dev] add built_with_use_die() to eutils.eclass ?

2007-04-23 Thread Doug Goldstein
dju` wrote:
 Hello,

 I'd like to add the following function to eutils.eclass :

 # Generate a standard error message for missing USE flags
 # in existing packages, and die.
 #
 # Usage: built_with_use_die category/package functionality [USE flag]
 #ex: built_with_use_die dev-util/subversion python
 #or: built_with_use_die net-www/apache LDAP ldap
 #
 # Typical usage:
 #   if ! built_with_use dev-util/subversion python ; then
 #built_with_use_die dev-util/subversion python
 #   fi
 #
 # Note: when USE flag is not specified, functionality is used for the USE 
 flag name.
   
Please look at the current built_with_use implementation and just wrap
that since it does some more checks. You're also missing support for the
--missing option.



 built_with_use_die() {
 local package=$1
 local func=$2
 local use_flag=$3

 [[ -z ${use_flag} ]]  use_flag=${func}

 eerror Your ${package} package has been built without
 eerror ${func} support, please enable the '${use_flag}' USE flag and
 eerror re-emerge ${package}.
 elog You can enable this USE flag either globally in /etc/make.conf,
 elog or just for specific packages in /etc/portage/package.use.
 die ${package} missing ${func} support
 }

 This function is already used in latest www-apps/trac ebuilds. The following 
 packages might be concerned, i.e. packages that are currently using 
 built_with_use() :

 app-admin/system-config-httpd
 app-admin/kedpm
 app-admin/sabayon
 app-admin/analog
 app-admin/diradm
 app-admin/moodss
 app-admin/puppet
 app-admin/keepassx
 app-admin/webalizer
 app-backup/bobs
 app-cdr/k3b
 app-cdr/dvdshrink
 app-crypt/xca
 app-crypt/gnupg
 app-doc/kchmviewer
 app-editors/joe
 app-editors/gobby
 app-emacs/emacs-w3m
 app-emulation/wine
 app-emulation/crossover-office-bin
 app-emulation/crossover-office-pro-bin
 app-emulation/xen-tools
 app-i18n/uim
 app-i18n/scim-bridge
 app-i18n/scim-qtimm
 app-misc/g15composer
 app-misc/beagle
 app-misc/gramps
 app-misc/tracker
 app-misc/tomboy
 app-misc/webcomics-collector
 app-office/krita
 app-office/koffice
 app-office/kmymoney2
 app-office/tinyerp-server
 app-office/gnucash
 app-office/mozilla-sunbird
 app-office/gnumeric
 app-office/qbankmanager
 app-pda/libsyncml
 app-pda/libopensync-plugin-syncml
 app-pda/libopensync-plugin-irmc
 app-portage/elogv
 app-portage/esearch
 app-portage/porthole
 app-portage/layman
 app-text/an
 app-text/xdvik
 app-text/bibletime
 app-text/biblestudy
 app-text/evince
 app-text/enscript
 app-text/epdfview
 app-text/gnome-doc-utils
 dev-cpp/Ice
 dev-cpp/libthrowable
 dev-db/pgadmin3
 dev-dotnet/galago-sharp
 dev-games/ogre
 dev-haskell/wxhaskell
 dev-java/cairo-java
 dev-java/velocity
 dev-lang/lazarus
 dev-lang/mercury-extras
 dev-libs/g-wrap
 dev-libs/m17n-lib
 dev-lisp/sbcl
 dev-ml/findlib
 dev-ml/lablgl
 dev-ml/ocamlnet
 dev-php4/php-java-bridge
 dev-php5/pecl-pdo-odbc
 dev-php5/pecl-pdo-oci
 dev-php5/php-qt
 dev-php5/pecl-pdo-sqlite
 dev-php5/pecl-pdo
 dev-php5/pecl-pdo-dblib
 dev-php5/pecl-pdo-mysql
 dev-php5/pecl-pdo-pgsql
 dev-python/pymssql
 dev-python/pyzor
 dev-python/soappy
 dev-python/pyopengl
 dev-python/imaging
 dev-python/wxpython
 dev-python/xapwrap
 dev-python/telepathy-python
 dev-ruby/ruby-gd
 dev-ruby/sqlite3-ruby
 dev-tcltk/thread
 dev-tinyos/tos-getenv
 dev-tinyos/tos-scripts
 dev-util/meld
 dev-util/pida
 dev-util/source-highlight
 dev-util/documancer
 dev-util/dialog
 dev-util/rapidsvn
 dev-util/imediff2
 dev-util/svnmailer
 games-action/rrootage
 games-action/powermanga
 games-action/noiz2sa
 games-arcade/frozen-bubble
 games-arcade/supertux
 games-arcade/pycadia
 games-arcade/solarwolf
 games-arcade/defendguin
 games-arcade/project-starfighter
 games-arcade/stepmania
 games-arcade/smclone
 games-arcade/tomatoes
 games-arcade/monster-masher
 games-arcade/ceferino
 games-emulation/dosbox-cvs
 games-emulation/dosbox
 games-fps/qudos
 games-fps/quake3-bin
 games-fps/duke3d
 games-fps/quake1-data
 games-fps/quake2-data
 games-fps/quake2-icculus
 games-fps/doom3-dungeon
 games-kids/cubetest
 games-mud/lyntin
 games-puzzle/xye
 games-puzzle/twindistress
 games-puzzle/flobopuyo
 games-puzzle/monsterz
 games-rpg/nwn
 games-rpg/tmw
 games-rpg/xu4
 games-rpg/nwn-cep
 games-simulation/gl117
 games-simulation/openttd
 games-simulation/lincity-ng
 games-simulation/planets
 games-sports/ultimatestunts
 games-strategy/freelords
 games-strategy/wesnoth
 gnome-extra/evolution-data-server
 gnome-extra/hal-device-manager
 gnome-extra/gnome-games
 gnome-extra/evolution-exchange
 kde-base/kpdf
 kde-base/kdebase
 kde-base/kdelibs
 kde-base/kdegraphics
 kde-base/kopete
 kde-base/kghostview
 kde-base/kdemultimedia-arts
 kde-base/kdenetwork
 kde-base/kdebase-kioslaves
 kde-misc/tork
 kde-misc/kompose
 kde-misc/kdnssd-avahi
 mail-client/mozilla-thunderbird
 mail-client/evolution
 media-fonts/acroread-asianfonts
 media-gfx/splashutils
 media-gfx/gimp
 media-gfx/pstoedit
 

Re: [gentoo-dev] add built_with_use_die() to eutils.eclass ?

2007-04-23 Thread Lars Weiler
* dju` [EMAIL PROTECTED] [07/04/23 23:45 +0200]:
 # Generate a standard error message for missing USE flags
 # in existing packages, and die.

I dislike that an emerge process dies when a use-flag is not
set (okay, it will die otherwise later with the package that
needs the dependency with that special use-flag built).  It
should be better to break with an appropriate message
_before_ anything will be compiled.  Let's say, directly
after portage has calculated the dependencies.

Your proposal looks like a quick fix for a feature portage
can't handle yet.  But your attached list of packages which
already use that behaviour is already quite long and so you
better should convince the portage-devs to include
built-use-flags into the dependency calculation.

Regards, Lars

PS: I should add the disclaimer, that I did not ask any of
the portage devs before I wrote these lines.  I only checked
http://www.gentoo.org/proj/en/portage/index.xml#doc_chap8
and could not find that this feature is already in
development.

PPS: I know that there are other package-managers out there.
And no, I don't want to use these.  portage still fits my
needs best.

-- 
Lars Weiler  [EMAIL PROTECTED]  +49-171-1963258
Instant Messaging : [EMAIL PROTECTED]
Gentoo Linux PowerPC  : Strategical Lead and Release Engineer
Gentoo Infrastructure : CVS Administrator


pgpC8hoQtvhTK.pgp
Description: PGP signature