summaryrefslogtreecommitdiff
path: root/macros.in
AgeCommit message (Collapse)AuthorFilesLines
2012-03-07Add --disable-dependency-tracking to %configure options.Ville Skyttä1-0/+1
autotools dependency tracking isn't generally useful in rpm builds; disabling it results in cleaner build logs and possibly slight build speedups. Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
2012-03-07Disable source fetch on build by default (for now) + commentPanu Matilainen1-0/+6
- We need to grow some digest (and why not external signature as well) validation mechanism before we can let rpmbuild download + execute arbitrary content from the internet, at least by default.
2012-02-08Switch back to former, much smaller BDB memory pool size (RhBug:752897)Panu Matilainen1-1/+1
- A larger cache is beneficial in various scenarios, but triggers horrible worst-case performance under memory pressure (or so my current theory goes, there might be other factors too). The worst-case degration is orders of magnitude bigger than the best-case improvements from the larger cache and for many use-cases doesn't make a whole lot difference. We could/should tune the cache with priorizing indexes and all, and perhaps dynamically select the cache size but for now, the 1Mb cache size is known to "just work".
2012-02-02Disable signature checking during database rebuild by defaultPanu Matilainen1-1/+1
- While it would be perfectly reasonable to perform signature checking during db rebuild, this is problematic as long as our keys live in the same database we're rebuilding: the environment might be paniced, the indexes required for key lookups might be corrupt or non-existent etc - one would assume there's a reason for the db is getting rebuilt in the first place. When signature checking is enabled, we're forced to generate missing indexes on the potentially borked database we're just about to rebuild, which might not go very well, and since they keyring loading has no clue its getting called from middle of db rebuild it'll try to use a shared environment which might be broken ... etc.
2011-04-29Add lrzip support.Ville Skyttä1-0/+1
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
2011-04-29Add lzip support.Ville Skyttä1-0/+1
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
2011-03-25Push platform config out of main rpm macros filePanu Matilainen1-23/+0
- canon arch & color stuff is now calculated per each known arch in installplatform, and just a single place where arch name mangling is done
2011-03-25Move %_fixperms to main macro configPanu Matilainen1-0/+3
- Fixing broken permissions in sources isn't exactly platform/vendor specific in nature (at least Suse adds this this to their own "platform" separately, kinda proving the point) - Kick out the remaining unused RH-pecific platform.in section
2011-01-03Bump up default BDB cache- and allowed mmap size considerablyPanu Matilainen1-1/+1
- The former defaults come from nearly a decade ago, things have changed a bit since then... Even BDB's own default cache size is much larger (8MB) now than what we've been setting. - Using 64MB cache improves cache hit rate (and performance) massively. Last-gasp default to roughly BDB's own current defaults, higher settings in the default macro setup.
2010-12-15Eliminate ancient dependency loop whiteout mechanismPanu Matilainen1-13/+0
- Nobody has been relying on this for ages, and with the new ordering code since rpm 4.8.x loops are handled much more gracefully than before. RIP.
2010-12-10Rename pattern -> path for, duh, path patternsPanu Matilainen1-2/+2
- 4.9 alpha used "pattern" but better fix the stupid name now than have to live with the non-obvious name forever
2010-12-10Support excluding by path or magic in file classificationPanu Matilainen1-1/+3
- %__foo_exclude_pattern and %__foo_exclude_magic regex'es now allow excluding attributes that would otherwise match.
2010-11-04Lose the remaining dbapi references in code + configurationPanu Matilainen1-9/+0
- Changing db_api to db_ver to force breakage on anything using the value, db_ver containing the BDB major version just to put something in the error messages where the dbapi version used to be.
2010-10-25Only specific cases of collections need extra orderingPanu Matilainen1-0/+1
- Add a crude flags system to allow selectively enabling the extra grouping during ordering: currently only sepolicy collection needs this, and its very harmful when applied to more regular collections as it creates truly gigantic dependency loops that rpm has no chance of sorting out sanely.
2010-10-20Hardwire the fundamental BDB access method configuration inside rpmPanu Matilainen1-30/+2
- The different access methods have different capabilities and are not interchangeable in all situations. Currently we can use either hash and btree but this might not be always the case for all indexes. - We'll eventually want to force-switch the index types to our liking, but for now follow these simple rules: 1) For existing databases, we accept both btree and hash 2) For newly created databases, the main Packages database remains a hash, all indexes are btrees. - Rip out nearly all the rest of the remaining macro configuration.
2010-10-20Eliminate now unnecessary db rebuild macro goo and other leftoversPanu Matilainen1-55/+6
- Rpm knows how to handle db rebuilds by itself, no need to expose these bits to configuration. - Also rip out a pile of other leftover "documentation" about BDB internal switches.
2010-10-12Move plugins out of rpm config directoryPanu Matilainen1-1/+1
- Plugins are by their very nature arch specific, while /usr/lib/rpm is a hodgepodge of all sorts of ... stuff, most of which is arch-independent and all. Use %{_libdir}/rpm-plugins to cleanly differentiate 32 vs 64bit plugin paths
2010-10-04Add cli switches to override signing key and digest algorithmPanu Matilainen1-1/+3
2010-09-29Remove configuration for no longer existing db indexesPanu Matilainen1-3/+0
2010-09-28Rip the useless %_signature macro and everything around itPanu Matilainen1-3/+0
2010-09-01Add SELinux policy pluginSteve Lawrence1-0/+3
This adds a new plugin specifically for a collection to load SELinux policy. This implements the post_add and pre_remove plugin hooks. The only time anything happens during the pre_remove hook is if post_add was not called (i.e. if the transaction only removes policies). This plugin extracts all the policy information from packages in the sepolicy collection during the open te hook. It then determines which policies should be installed/removed based on if the package is being installed/removed and the type of the policy and the system policy. It then executes semodule (or uses libsemanage if semodule cannot be executed or installing in a chroot) to remove and install the necessary policies. It then reloads the selinux state, reloads the file contexts, and if necessary, relabels the file system.
2010-06-22Add a generic plugin for use by simple CollectionsSteve Lawrence1-0/+5
This patch adds a generic plugin, exec.so, that should be sufficient for the majority of Collection actions. After all packages in a Collection have been installed/removed, this plugin executes the arguments by calling system(3), allowing for a very generic and powerful method to perform many actions. This also adds two sample macros as examples of the format, using the exec.so plugin.
2010-04-09Simplify the dbenv->open() flags shufflePanu Matilainen1-4/+2
- We always create an environment. If we dont have permissions to create or join a shared environment, we use a private environment. Instead of trying to figure out what to do beforehand, retry dbenv->open() with different flags to see if it succeeds. This eliminates some potential races when others might create/remove the environment while we're pondering about appropriate flags. - Lose the "create" bdb config option, this is something we always want to decide internally. - Remove "force" bdb config option, DB_FORCE is dbenv->remove() option and its value clashes with DB_CREATE...
2010-04-08Eliminate DB_JOINENV usage and config optionPanu Matilainen1-2/+1
- DB_JOINENV is a no-op since BDB >= 4.4
2010-04-08Eliminate "thread" BDB optionPanu Matilainen1-1/+0
- this is not something that users should be tweaking - its never been enabled, leave it that way for now
2010-04-08A little bit of sanity to dbiNew()Panu Matilainen1-4/+2
- lose the hysterical dbi_use_env condition and usedbenv option this is always enabled - ensure mpool is always initialized, lose the config option (this is a mandatory BDB subsystem, not a bleeping configurable) - let pagesize be what it is even when no configuration is present - avoid overriding dbi_mmapsize and dbi_cachesize if set in the configuratio - these are all per-environment, not per-dbi settings but for now...
2010-04-08Eliminate exclusive and rdonly BDB configuration optionsPanu Matilainen1-2/+0
- we never want DB_CREATE to cause failure - let BDB create the db if it needs to, otherwise DB_CREATE doesn't do anything - rdonly is decided elsewhere, not in bleeping configuration
2010-04-08Remove per-dbi perms and configurationPanu Matilainen1-3/+0
- the file permissions are per-db global, no need to be able to speficy different modes for indexes
2010-03-31Remove BDB recno + queue access methods from configurationPanu Matilainen1-3/+0
- these rather limited access methods have never been used for anything, rpm always used hash access and later btree to varying degree
2010-03-31Lose shmkey + shared BDB config optionsPanu Matilainen1-1/+0
- we dont want anything to do with System V IPC, really... BDB uses file backed mmap when it needs, this suits us just fine
2010-03-31We dont want to use DB_HOME environment, everPanu Matilainen1-2/+0
- rpm has its own switches for overriding the db home when that's necessary, DB_HOME it should use not
2010-03-31We dont have any temporary databases anymore, lose the config switchesPanu Matilainen1-2/+1
- The last temporary db was Depends which is now replaced with an in-memory hash, and the temporary dbs were troublesome with chroot operations anyway, good riddance
2010-03-31Make rpmdb index list hard-wiredPanu Matilainen1-3/+0
- We dont grow new indexes every other day, and especially this is not activity that users need to be able to do - Gets rid of the hysterical initialization and million can't happen NULL-checks
2010-03-23First take at pluggable file attribute + dependency extraction systemPanu Matilainen1-38/+18
- move most of the hardwired classification logic from rpmfc C-code to macro-based configuration, supporting drop-in addition of arbitrary new attributes + dependency extractors based on regex matching of libmagic file types and paths - just the initial rough conversion of our built-in dependency types, various open questions + todo-items remain, plus likely fair amount of more-or-less subtle breakage
2010-03-19Lose unused temporary/pseudo rpmdbi tagsPanu Matilainen1-4/+1
- we haven't had any temporary dbis since rpm 4.8.0 where Depends got axed, the rest were just nonexistent fluff anyway
2010-02-18fontconfig -> font dependency extractor renamePanu Matilainen1-2/+2
- No functional changes, just clearing the naming conventions to avoid having to extra mapping for attribute -> extractor name. The current font provides are handled by fontconfig, but that's just an internal implementation detail.
2010-02-18Script/interpreter terminology renamingPanu Matilainen1-1/+1
- No functional changes, just making more obvious mapping between attributes and the dependency extractor names. This also leaves the term "interpreter" free for use for the actual interpreters, such as interpreter(python) provides if we go that way (ticket #136).
2010-02-10Permit requires extraction too from fontconfig and desktop filesPanu Matilainen1-0/+2
- presently unused but...
2010-02-10Split elf dependency extraction out of librpmbuild to external helperPanu Matilainen1-1/+4
- Elf dependency extraction code code lifted from rpmfcELF() and refactored to saner pieces. Having it in separate executable also frees librpmbuild of libelf dependency, clean up the unnecessary linkage etc from autofoo - This lets internal dependency generator for elf files be overridden without losing file coloring (which is required for correct multilib handling). It also permits non-native elf files (eg when cross-building) to be handled by providing a custom elf dependency helper - On the flip side, this inevitably slows down builds somewhat as two fork-exec's are needed for every elf file, but unlike invoking something like the python interpreter, this is a slim helper... - All dependency extractors of the internal dependency generator are now external helpers (how twisted is that, huh? :) and thus can be customized and filtered through %__foo_provides|requires macros
2010-02-10Separate helper for script interpreters, split out of librpmbuildPanu Matilainen1-0/+3
- permit overriding/customization of script interepreter dependencies - unlike the C-version, the interpreter.req only looks at the first line for shebang: libmagic only looks at the first line too, so anything else will never get classified as scripts in the first place
2010-01-22Use %{__make} macro instead of "make"Panu Matilainen1-2/+2
- allows easy overriding of the used make version for %make_install and %makeinstall
2010-01-06Add %{__id_u} back, duhPanu Matilainen1-0/+1
- appears to be rather commonly used afterall - dont bother with the former id|sed foo though
2009-12-23Use AC_PROG_MKDIR_P for testing mkdir -p capabilityPanu Matilainen1-1/+1
- for rpmbuild's purposes MKDIR_P doesn't cut it though, we need to point it to something that exists on an installed system
2009-10-22Make --httpproxy and friends work again (RhBug:529214)Panu Matilainen1-1/+5
- macro fiddling to pass the macros set by --httpproxy etc popt aliases to the url helper - ftp proxy and http proxy control the same thing (http proxy) now to keep things simple - while at it, add %__urlhelper_localopts for local customization needs without having to override the entire __urlhelperopts macro
2009-10-19Avoid using python's print for Python 3.x compatibilityPanu Matilainen1-3/+3
- print chanced from statement to a function in python 3, for our purposes sys.stdout.write() is sufficient and avoids dealing with the incompatibilities between Python 2.x and 3.x - suggested by David Malcolm / Ville Skyttä
2009-10-07Support passing extra options to dep generator scriptsPanu Matilainen1-1/+4
2009-10-06Teach the internal dep generator about OCamlPanu Matilainen1-0/+3
- OCaml seems to have fairly well detectable magic in its files, nice - Dont call the regular find-requires from the scripts now that internal is working
2009-10-06Deprecate %__lzma, use %__xz in it.Ville Skyttä1-1/+2
2009-09-16Move the default transaction lock out of BDB environment namespacePanu Matilainen1-10/+2
- We dont want the transaction lock to get mixed with the BDB environment, nor do we want it wiped out with it as the ts lock protects things *around* the environment. Unlike the environment, any fcntl locks on the file get released when process dies, so if there is a lock, there's a process alive holding it and you'd better not remove it. - Use the same lock path in macro configuration and built-in fallback - Make it a hidden file to avoid people confusing lock file existence with it actually being locked
2009-09-02Use %{nvra} as default query format, much simpler...Panu Matilainen1-3/+3