Commit Graph

140 Commits

Author SHA1 Message Date
Jo-Philipp Wich 5170393f8c include: choose package output directory based on repository info
Use the new repository metadata field to choose the output directory of the
final package archives.

Non-sharable packages will be placed in the per-target package directory
while the rest will be placed in a per-repository sub directory within the
$OUTPUT_DIR/packages/$CPU_TYPE/ prefix.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-04-06 21:55:44 +02:00
Felix Fietkau e597a4190e package-ipkg.mk: fix typo (patch from #19540)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45568
2015-04-23 08:27:22 +00:00
Felix Fietkau d600f9e957 package-ipkg.mk: fix typo
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45194
2015-03-31 18:31:08 +00:00
Felix Fietkau 765c73f309 package-ipkg.mk: add missing semicolon (#19381)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45193
2015-03-31 18:29:30 +00:00
Felix Fietkau 640318e620 build: ensure that preinst and postrm are executable (fixes #19372)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45187
2015-03-31 15:13:27 +00:00
Felix Fietkau 55c5d10ca9 tools: replace ipkg-utils with a reduced ipkg-build variant in scripts/
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45129
2015-03-29 07:35:26 +00:00
Felix Fietkau 61dd3c8013 build: make postinst/prerm scripts executable
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45128
2015-03-29 07:35:19 +00:00
John Crispin 4a1d29c5fc Fix possible fail to check for dependencies
Few characters in filenames (a plus sign, a dot) can be interpreted
specially by grep. This can lead to the omission of missing package
dependency. For example if we would have "some.file.so" then it
matches also "some2file.so". -F switch off special meaning
of any character and -x match against whole line.

Signed-off-by: Sławomir Demeszko <s.demeszko@wireless-instruments.com>

SVN-Revision: 44247
2015-02-03 10:11:06 +00:00
Nicolas Thill d8263c3025 include: don't use extended regex for deps checking
Closes: #18851

Signed-off-by: Nicolas Thill <nico@openwrt.org>

SVN-Revision: 44224
2015-01-31 08:15:46 +00:00
Jo-Philipp Wich c3787d4c0c include: use anchored patterns for dependency checking
Anchor search pattern when testing dependencies, otherwise the check may
succeed in cases where it shouldn't, e.g. when matching "udp_tunnel.ko"
against "ip6_udp_tunnel.ko".

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 44207
2015-01-29 21:59:17 +00:00
Jo-Philipp Wich 4de4827ddc include: unbreak conffiles, postinst & prerm exports
Changeset r43017 reworked the ipkg control metadata generation but broke
the export of conffiles, postinst and prerm defines.

Change the code back to rely on shvar and shexport, this is required to
properly output multiline contents.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 43041
2014-10-24 09:24:51 +00:00
Felix Fietkau 949ab1487f build: only print skipped packages that were selected
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43023
2014-10-22 08:57:50 +00:00
Felix Fietkau d8278dee4d kernel: use /bin/sh instead of bash to speed up processing of many kmod-* packages
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43022
2014-10-22 08:57:45 +00:00
Felix Fietkau d081edf7eb build: clean up and optimize ipkg control generator code
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43017
2014-10-22 08:57:16 +00:00
Felix Fietkau edc8e2022a build: optimize printing of disabled packages
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43015
2014-10-22 08:57:07 +00:00
Felix Fietkau c6ebce701e build: propagate package conflicts to opkg metadata
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42771
2014-10-05 16:41:38 +00:00
John Crispin 44249f71a8 postinst trigger: the new postinst trigger broke IB
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 42571
2014-09-16 11:56:19 +00:00
John Crispin d6dbc22bbc ipkg: add a default postinst/prerm script
the postinst script enables/starts the init.d scripts upon package installation
and installs the users required by the package.

the prerm script stops and disables the init.d scripts.

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 42470
2014-09-11 12:27:49 +00:00
John Crispin 285012d897 include: add a meta data field for required system user:group
this is in preparation of having services run as !root with
ACL'ed access to ubus.

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 42469
2014-09-11 12:27:26 +00:00
Jo-Philipp Wich 9aeb0cff11 build: fix removal of old .ipk files with CONFIG_PER_FEED_REPO
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 42090
2014-08-09 13:04:17 +00:00
Jo-Philipp Wich a720dd209f build: introduce per feed repository support
This changeset implements a new menuconfig option to generate separate
repositories for each enabled package feed instead of one monolithic one.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 42002
2014-08-05 11:24:24 +00:00
Jo-Philipp Wich 28f44a4f91 include: remove SDK exception from package install targets
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 41459
2014-07-02 11:39:28 +00:00
Felix Fietkau 623825103e build: allow packages to declare ABI versions to detect necessary package rebuilds
If a package directly depends on another package that recently changed
its ABI version, it will be cleaned up and rebuilt (assuming quilt is
not used).

This helps with packages that have no stable ABI, e.g. libubox, ubus,
etc.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 39720
2014-02-23 17:32:04 +00:00
Felix Fietkau f85c00c2df build: remove SourceFile and SourceURL from opkg metadata - they are useless without the corresponding openwrt package directory
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 39038
2013-12-13 10:40:19 +00:00
Jonas Gorski 8e12b39d5d build: print missing dependency error to stderr
Allow to see the actual error even when compiling with V=w/V=1 only.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 37388
2013-07-18 11:29:18 +00:00
Felix Fietkau 5d1c80f002 build: add required exports for dependency tracking
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37387
2013-07-18 11:18:37 +00:00
Felix Fietkau 6640b83a3e build: add kernel modules to package provides info (along with shared libs)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37385
2013-07-18 10:47:00 +00:00
Jonas Gorski a48b04e8dc include/package-ipkg.mk: print warnings/errors to stderr
Makes warnings/errors visible when building with V=w/V=1.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 35715
2013-02-21 11:45:20 +00:00
Felix Fietkau de707ac97e build: reduce the size of package metadata a bit to keep package list files smaller
SVN-Revision: 34871
2012-12-22 19:56:21 +00:00
Jo-Philipp Wich d3e90ba7a7 buildroot: isolate the .install stamp files for build variants (#12279)
This fixes missing embedded packages if multiple build variants are selected in
the build config, e.g. missing ppp if CONFIG_PACKAGE_ppp=y and
CONFIG_PACKAGE_ppp-multilink=m .

SVN-Revision: 34106
2012-11-07 16:15:22 +00:00
Hamish Guthrie 81a3d9ba31 licensing: Add licensing metadata to many packages Two new variables are introduces to many packages, namely PKG_LICENSE and PKG_LICENSE_FILES - there may be more than one license applied to packages, and these are listed in the PKG_LICENSE variable and separated by spaces. All relevant license files are also added to the PKG_LICENSE_FILES variable, also space separated.
The licensing metadata is put into the bin/<platform>/packages/Packages file
for later parsing. A script for that is on it's way!

SVN-Revision: 33861
2012-10-19 15:34:28 +00:00
Felix Fietkau 44cd20b802 build: rework the package/install step - collect package install lists during package/compile, then install all packages at once
SVN-Revision: 33631
2012-10-06 16:01:06 +00:00
Jo-Philipp Wich ec770abd0d package-ipkg.mk: flag packages as "ok" after install
By flagging compile-time-installed packages as "ok", they can be differentiated
from runtime-installed packages on the target later on.

SVN-Revision: 32739
2012-07-15 19:29:43 +00:00
Felix Fietkau 67e51f1787 include/package-ipkg.mk: fix copying provides list introduced in r32332
SVN-Revision: 32358
2012-06-14 18:09:54 +00:00
Jo-Philipp Wich 3b65557db8 package-ipkg.sh: copy the package provides list for all virtual PROVIDES
SVN-Revision: 32332
2012-06-13 11:42:17 +00:00
Felix Fietkau 6ca6d317b3 build: add checks for missing package dependencies
SVN-Revision: 32185
2012-06-11 00:57:36 +00:00
Felix Fietkau 031990cf95 build: generate a list of provided libraries for each ipkg file (includes provided libraries from packages that the exporting package depends on)
SVN-Revision: 32172
2012-06-10 20:27:41 +00:00
Nicolas Thill 6d6e379922 include/package-ipkg.mk: fix typo in r29449
SVN-Revision: 29497
2011-12-10 22:02:50 +00:00
Gabor Juhos 091894764b include/package-ipkg.mk: don't add vi backup files to packages
Also remove trailing whitespaces.

SVN-Revision: 29449
2011-12-05 17:27:00 +00:00
Nicolas Thill a930a79e08 include/package-ipkg.mk: fix typo
Fix a typo that caused packaging of an empty ./lib/upgrade/keep.d
directory when the package supplied conffiles

SVN-Revision: 28595
2011-10-26 00:49:07 +00:00
Felix Fietkau 8a0d981006 build: move the SH_FUNC eval to the beginning of the opkg control file build command chain, not in front of every single command
SVN-Revision: 26432
2011-04-03 02:10:32 +00:00
Felix Fietkau f6a0d67e7c build: do not use shell calls to export empty opkg control files, speeds up package build and fixes some "Argument list too long" errors Patch by Thomas Langer from #8450
SVN-Revision: 26431
2011-04-03 02:07:59 +00:00
Jo-Philipp Wich dcb66b0593 deploy .ipk archives with --force-maintainer to ensure that configs are kept up-to-date in case they exist already for various reasons
SVN-Revision: 25915
2011-03-06 23:52:13 +00:00
Jo-Philipp Wich bad3c4865d set Installed-Size to 0 when preparing control, its substituted by ipkg-build later on
SVN-Revision: 25022
2011-01-16 22:18:35 +00:00
Jo-Philipp Wich e09767beea package-ipkg.mk: add support for "essential" package flag, fix typo
SVN-Revision: 23959
2010-11-11 16:18:01 +00:00
Michael Büsch 9d61a9b1c6 Lock copying to STAGING_DIR_ROOT. This fixes build failures for parallelized build.
SVN-Revision: 23709
2010-10-29 15:07:23 +00:00
Jo-Philipp Wich f3a5085903 package-ipkg.mk: build sysupgrade keepfile hints out of conffiles not yet present in the package. This applies to config directories or files that do not exist but may be created by the user after package installation.
SVN-Revision: 23257
2010-10-05 19:20:27 +00:00
Jo-Philipp Wich 8ae1a4fc69 correct default package status info (install -> unknown) - fixes "opkg_conf_write_status_files: Internal error: package ... has a NULL dest"
SVN-Revision: 23222
2010-10-04 17:20:49 +00:00
Jo-Philipp Wich cb4c39b55d prime .ipk control files with Status: field to introduce hold for post flash installed packages
SVN-Revision: 23175
2010-10-02 04:04:12 +00:00
Jo-Philipp Wich 8b9ca16985 add support for flagging packages
SVN-Revision: 23172
2010-10-02 03:21:33 +00:00
Gabor Juhos b5b21d03c4 package-ipkg.mk: use the BOARD variable in opkg cmdline if ARCH_PACKAGES is not defined
SVN-Revision: 23166
2010-10-01 07:09:34 +00:00
Jo-Philipp Wich 9bb6f3b5f3 opkg: - implement --add-dest and --add-arch commandline options, this allows to run entirely without configuration - tweak default config location patch to not require a config in offline root mode - rename --force-run-hooks option to --force-postinstall, its a more appropriate name - utilize new opkg commandline options in package-ipkg.mk and remove config file generation
SVN-Revision: 23032
2010-09-12 21:16:02 +00:00
Jo-Philipp Wich 6cbd09df64 pass opkg offline root as command line arg, solves caching issues when switching between multiple subtargets, thanks Ralph Hempel for reporting
SVN-Revision: 22990
2010-09-09 21:05:51 +00:00
Jo-Philipp Wich b1edd2ac6e opkg: add --force-run-hooks option to run postinstall scripts in offline root mode, utilize it for host package install
SVN-Revision: 22960
2010-09-06 19:58:05 +00:00
Jo-Philipp Wich 9d74fc3eb3 use opkg/host for package installation - speeds up rebuild operations - aligns generated package list format with the one created by opkg on the target - fixes broken dependency handling in imagebuilder
SVN-Revision: 22949
2010-09-06 02:15:46 +00:00
Felix Fietkau d9e0d5705a speed up the ipkg build process some more by reordering commands
SVN-Revision: 22722
2010-08-19 12:49:46 +00:00
Felix Fietkau a9136c0892 speed up the build system by including include/shell.sh on shell commands only where necessary
SVN-Revision: 22720
2010-08-19 12:49:37 +00:00
Jo-Philipp Wich e47a8a001c revert r22372 and r22405, dependency on host libtool causes problems
SVN-Revision: 22406
2010-07-28 02:18:16 +00:00
Jo-Philipp Wich 8c1d9afc40 use host opkg for installing packages in buildroot and ImageBuilder
SVN-Revision: 22372
2010-07-23 19:49:19 +00:00
Hauke Mehrtens 3dd6909c20 Some dependencies that are depending on target are not added into the Depends line in the control file of the package. For example +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb does not result in kmod-ssb for the x86 target or any other target.
This fixes #6874

SVN-Revision: 20553
2010-03-28 19:22:59 +00:00
Felix Fietkau f1da5431bb build variants: only build opkg packages for the requested build variant (or any if no variant was specified for the package)
SVN-Revision: 18464
2009-11-22 07:08:39 +00:00
Felix Fietkau c4b197737e do not fail on empty packages
SVN-Revision: 17504
2009-09-03 02:53:13 +00:00
Felix Fietkau d1f1ff5759 get rid of old data before staging unstripped package binaries
SVN-Revision: 17498
2009-09-03 01:10:37 +00:00
Felix Fietkau e6ceb1cace build: when staging unstripped package files, install them to a temporary directory first to work around file overwrite issues in packages like asterisk
SVN-Revision: 17477
2009-09-02 19:01:09 +00:00
Felix Fietkau 822615cb6b merge the control file and the .ipk file targets into one to prevent them from going out of sync
SVN-Revision: 17332
2009-08-20 15:48:41 +00:00
Felix Fietkau 59d130d867 fix multiple ipkg builds of the same arch but with different targets in the same checkout
SVN-Revision: 17325
2009-08-20 14:04:40 +00:00
Felix Fietkau 2bb863f337 when regenerating an ipkg package, make sure the entire ipkg build dir is cleaned as well to prevent stale files from making it into the package after configuration changes
SVN-Revision: 17313
2009-08-19 15:12:54 +00:00
Florian Fainelli 7f36797bb7 ensure CONTROL directory is created (#5683)
SVN-Revision: 17293
2009-08-17 10:14:25 +00:00
Felix Fietkau b0bf5fd9a0 add target for library specific installations into the root staging dir, fix ipkg build dependency on the package build stamp
SVN-Revision: 17168
2009-08-08 02:24:37 +00:00
Felix Fietkau 4169a2e834 add a staging directory for unstripped package files, useful for debugging, will be used for mklibs integration later
SVN-Revision: 17167
2009-08-07 21:58:35 +00:00
Nicolas Thill 1be5092692 move IPKG_STATE_DIR from ./rules.mk to ./include/package-ipkg.mk and change its value to suit opkg
SVN-Revision: 14269
2009-01-29 20:13:01 +00:00
Nicolas Thill 0bbd70070f add an "Installed-Size" field to package control files, so that opkg could check needed vs. available storage space before installing a package
SVN-Revision: 13602
2008-12-11 20:15:41 +00:00
Felix Fietkau 38b513811c fix conditional depends in ipkg control files
SVN-Revision: 13051
2008-10-27 17:24:27 +00:00
Felix Fietkau cdcc68d689 implement conditional dependencies for generating the Depends: field of ipkgs
SVN-Revision: 12836
2008-10-03 14:37:55 +00:00
Felix Fietkau 800ef0f56c some minor fixes, cleanups, package build abstraction
SVN-Revision: 9051
2007-09-28 01:23:56 +00:00
Nicolas Thill 7d50df6224 add 'Provides:' line in ipkg control files
SVN-Revision: 8906
2007-09-21 10:05:00 +00:00
Nicolas Thill 3f80599cda move ipkg related vars from ./rules.mk to ./include/package-ipkg.mk
SVN-Revision: 8581
2007-09-03 06:46:44 +00:00
Nicolas Thill 3e47314ccb move rule for $(STAGING_DIR)/etc/ipkg.conf out of BuildIPKG so that it's defined only once
SVN-Revision: 8491
2007-08-26 12:42:48 +00:00
Nicolas Thill d21941ca4d move ipkg.conf creation from tools/ipkg-utils to include/package-ipkg.mk
SVN-Revision: 8481
2007-08-25 11:55:01 +00:00
Nicolas Thill e9fba2c56b combine the 3 find in a single one
SVN-Revision: 8477
2007-08-24 12:05:30 +00:00
Felix Fietkau 56cdcf23a3 fix recursive dependencies on build directories - should lead to fewer spontaneous rebuilds
SVN-Revision: 7151
2007-05-09 22:47:01 +00:00
Felix Fietkau 874f03ea00 fixes for a few build errors on osx without fink
SVN-Revision: 7065
2007-04-29 01:30:48 +00:00
Felix Fietkau 449a4f4079 clean up dependency handling for autorebuilds
SVN-Revision: 6956
2007-04-15 18:28:24 +00:00
Felix Fietkau 3e91dd1bd5 revert find | xargs => find | exec changes - this is completely unnecessary and introduces additional dependencies that we do not need
SVN-Revision: 6942
2007-04-12 19:18:38 +00:00
Mike Baker 0359c6222e Using find's -exec to remove directories causes 'not found' errors when find tries to search the removed directory. Hopefully fixed now.
SVN-Revision: 6849
2007-04-03 11:56:08 +00:00
Florian Fainelli 6cd84c6838 Use find -exec instead of xargs
SVN-Revision: 6837
2007-04-02 16:09:15 +00:00
Felix Fietkau 198a3ae713 re-enable SDK=1 and DEVELOPER=1 overrides for building all packages
SVN-Revision: 6581
2007-03-16 20:20:19 +00:00
Mike Baker 8dc90ccc11 formatting and trivial cleanup
SVN-Revision: 6573
2007-03-16 06:12:53 +00:00
Felix Fietkau 2c62bddcfe Add an 'Image Configuration' menu to menuconfig Packages can export a list of config options with labels and data types through the metadata. The selected config values will be exported to the target filesystem in /etc/uci-defaults and applied on the first boot.
SVN-Revision: 6572
2007-03-16 03:02:31 +00:00
Felix Fietkau 7b1a36cab4 split package.mk and clean up build system code (based on patch by mbm), makes the code more readable and speeds up metadata scan
SVN-Revision: 6571
2007-03-15 23:57:18 +00:00