Re: [gentoo-dev] add built_with_use_die() to eutils.eclass ?
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 ?
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 ?
-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 ?
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 ?
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 ?
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 ?
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 ?
* 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