Commit graph

218 commits

Author SHA1 Message Date
Juan RP
205d066e7c xbps-src: another way to get the target of symlinks. 2011-06-14 15:26:15 +02:00
Juan RP
670dc453e2 xbps-src: (metadata.sh): if readlink -f returns nothing try without -f. 2011-06-04 20:37:55 +02:00
Juan RP
f190895d30 xbps-src::info_tmpl(): also print $homepage and $license. 2011-06-02 09:01:11 +02:00
Juan RP
1bcd94905c xbps-src: update pkg metadata files.plist "links" array with a new object "target".
The "target" object should point to the target file for the symlink. Will be
used by an upcoming xbps utils version.
2011-05-31 16:39:02 +02:00
Juan RP
6ed4e562cc xbps-src: add three new metadata objects in binary pkgs.
homepage (string): package upstream URL.
license (string): package licenses.
build_date (string): package build date in UTC.
2011-05-26 10:40:31 +02:00
Juan RP
80f784e0eb shutils/chroot.sh: update ld.so(8) before entering the chroot. 2011-05-26 10:14:39 +02:00
Juan RP
5567ff7066 shutils/chroot.sh: only cleanup /tmp files if /xbps hasn't been mounted. 2011-05-02 21:35:41 +02:00
Juan RP
e0611f10ab shutils/chroot.sh: create /tmp dir if doesn't exist in masterdir. 2011-04-29 22:40:32 +02:00
Juan RP
15bc8e1eee xbps-src: remove pre/post and install status file when removing a pkg. 2011-04-12 10:03:24 +02:00
Juan RP
f84a10dfae shutils/chroot.sh: fix a msg when the chroot has not been prepared yet. 2011-02-26 17:56:23 +01:00
Juan RP
0dd337ee91 xbps-src:chroot.sh: update for busybox rename. 2011-02-11 16:29:02 +01:00
Juan RP
85543cd319 xbps-src: only umount bind mounts in the chroot shell fragment. 2011-02-11 14:19:34 +01:00
Juan RP
5e9f331526 xbps-src: added "provides" var for use in templates.
This will add support for virtual packages in XBPS; will be implemented
in the following days.
2011-01-26 13:37:37 +01:00
Juan RP
2a31f296ac xbps-src: improve the 'info' target. 2011-01-11 17:01:23 +01:00
Juan RP
0474b11e7b xbps-src: respect CFLAGS if $build_style == custom-install. 2011-01-11 16:21:08 +01:00
Juan RP
e6abf71b04 xbps-src: disable -Wl,--as-needed if $broken_as_needed is set. 2011-01-10 12:02:08 +01:00
Juan RP
f832dd42a8 xbps-src: be more conservative with signal handlers. 2010-12-28 22:55:17 +01:00
Juan RP
2168077d11 xbps-src: added new var 'system_groups' for pkgs requiring new system groups. 2010-12-28 11:23:33 +01:00
Juan RP
81cad50a1e xbps-src: do not return error if $wrksrc doesn't exist in the 'clean' target. 2010-12-23 20:39:54 +01:00
Juan RP
c7aac27ded xbps-src: do a fake extraction if $distfiles not set too, as before. 2010-12-23 17:59:19 +01:00
Juan RP
ae3c15cb59 xbps-src: added a new var for templates "dkms_modules".
It will be used by packages that will install DKMS modules.
2010-12-23 14:29:38 +01:00
Juan RP
6183d49629 xbps-src: remove_pkg(): remove subpkg stat files in $wrksrc if found. 2010-12-23 13:14:18 +01:00
Juan RP
f9135c92c8 xbps-src: if $noextract is set, also try to run the "do_extract" function if available. 2010-12-23 02:13:40 +01:00
Juan RP
543fe35787 xbps-src: improve some messages in fetch phase. 2010-12-20 07:06:48 +01:00
Juan RP
3da3783333 xbps-src: improve msg_* funcs and update all callers. 2010-12-20 00:22:12 +01:00
Juan RP
08d47bc8b1 xbps-src: improve run_func and always make a log in $wrksrc.
Also when or after the pkg is installed to destdir/stowned, and there was
any error, always remove the files that were installed into destdir.

With these changes there's no need to return any value in the do_foo()
functions because they are caught automatically. Also any function is now
logged into its own file to always log what happens.
2010-12-18 22:38:21 +01:00
Juan RP
82d298b6ca xbps-src: clean up /tmp when entering to the chroot. 2010-12-18 14:33:30 +01:00
Juan RP
4f2edb4c45 xbps-src: verify_rundeps: if package has missing deps, return error. 2010-12-16 22:42:54 +01:00
Juan RP
1c8e866f9d xbps-src: quote properly some vars in the strip/verifyrdeps code. 2010-12-14 18:16:53 +01:00
Juan RP
f2bd4e603b xbps-src: handle files with spaces and other characters. 2010-12-14 16:34:05 +01:00
Juan RP
ef9cfa20bf strip_files: skip this pass completely if $noarch is set. 2010-12-11 01:53:14 +01:00
Juan RP
eaf3247352 builddep_funcs: if there are no build deps, do not print a wrong message. 2010-12-11 01:46:55 +01:00
Juan RP
38a0a4eb53 xbps-src: add openrc_services trigger before system_users.
Packages that use both will try to remove the system user when the openrc services
are launched, so they report "user still logged in" errors.

While being here remove unnecessary empty lines in the generated scripts.
2010-12-07 17:51:17 +01:00
Juan RP
af284b261b xbps-src: do not hardcode unzip/xz path for extracting, assume it's in PATH. 2010-11-17 02:46:08 +01:00
Juan RP
7f522a8cf4 xbps-src: remove the triggers, they will be handled by the xbps-triggers pkg. 2010-11-04 13:52:10 +01:00
Juan RP
722db61ea2 xbps-src: improve how patches can be applied.
1) $patch_args can be used if all patches need special args other than "-Np0"
   (set by default).
2) If the $PATCHESDIR/series file exist, it will specify how the patches
   will be applied, in that order.
2010-11-03 15:56:37 +01:00
Juan RP
f85dba88f3 xbps-src::tmpl_funcs: add two comments for BUILD_32BIT. 2010-10-31 01:40:23 +02:00
Juan RP
71e5c38598 xbps-src: added XBPS_LDFLAGS into the configuration file.
This is to specify common LDFLAGS settings for all packages, by default
it's set to '-Wl,--as-needed' to avoid linking extra libraries into
the binaries. This helped to find such cases.
2010-10-29 10:23:25 +02:00
Juan RP
e92e7e69fe xbps-src: don't ignore pkgs that use $nostrip for verify rundeps code. 2010-10-28 04:22:00 +02:00
Juan RP
0432cc3785 xbps-src: remove dup strip_files() in pkgtarget_funcs.sh. 2010-05-26 15:47:59 +02:00
Juan RP
c34e13336b xbps-src: multiple changes to improve infrastructure.
- Remove buildvars_funcs.sh, its code has been moved into set_tmpl_common_vars().
- Move stripping code into its own file, and don't run it via fakeroot.
- Remove unnecesary reset_tmpl_vars() call in install_pkg().
- Misc changes.
2010-05-26 15:41:26 +02:00
Juan RP
f6b57540bd xbps-src: fucking (un)set_build_vars() crap! 2010-05-21 01:06:22 +02:00
Juan RP
9408af3761 xbps-src: make BUILD_32BIT work for packages using C++. 2010-05-21 00:30:27 +02:00
Juan RP
127a8e42f7 xbps-src: make it possible to build bootstrap packages on x86_64 for 32bit,
by setting the envvar BUILD_32BIT.

So now you can build bootstrap pkgs for i686 on x86_64 like this:

1) install gcc-multilib and ncurses32.
2) env BUILD_32BIT=yes linux32 xbps-src bootstrap
2010-05-20 22:20:52 +02:00
Juan RP
c785787fdd xbps-src: added 'clean' target to remove pkg build directory. 2010-05-20 04:05:35 +02:00
Juan RP
f00c51a6a3 xbps-src: support -m with 'checkvers' target. 2010-05-19 03:04:42 +02:00
Juan RP
b9d0db9470 xbps-src: added new 'checkvers' target to check for new versions from srcpkgs
against current installed packages.
2010-05-19 03:00:52 +02:00
Juan RP
66321f05e6 xbps-src: fix an error in the unstow case. 2010-05-17 22:21:19 +02:00
Juan RP
9e285b9608 xbps-src: improve multiple mount/umount chroot handling. 2010-05-17 12:09:44 +02:00
Juan RP
a0432bffa5 xbps-src: do not set CFLAGS/CXXFLAGS multiple times via build_vars. 2010-05-15 18:20:56 +02:00
Juan RP
ab3193c208 xbps-src: do not umount if <masterdir>/.xbps_chroot_working is there. 2010-05-15 17:28:18 +02:00
Juan RP
fe36d782ca xbps_chroot_handler: do not umount, leave this to the signal handler of xbps-src. 2010-05-14 15:17:58 +02:00
Juan RP
a599311f15 xbps-src: always try to unmount via xbps-src-chroot-helper before exiting. 2010-05-14 14:48:55 +02:00
Juan RP
561783f002 fetch_funcs: print a message if using $nofetch. 2010-05-14 02:27:38 +02:00
Juan RP
816b0945a8 chroot.sh: mention that xbps-src.conf in the chroot is autogenerated. 2010-05-14 01:12:53 +02:00
Juan RP
148f1d5db5 xbps-src: reinstall xbps-src any time we are entering into the chroot. 2010-05-14 00:16:37 +02:00
Juan RP
ceefb18bff xbps-src: multiple improvements to messages and phases.
- Prefix all messages with 'Package 'pkgname (version)': ..." to really
  understand what's going on. Add more messages in some stages...
- Do not run pre/post_{configure,build,install} or do_{build,install} stages
  if they were executed successfully in the past.
2010-05-14 00:07:47 +02:00
Juan RP
85f018289f builddep_funcs: add extra space to the deps message. 2010-05-13 22:22:05 +02:00
Juan RP
d1791dad60 make-binpkg: pass correct vars as arguments to the signal handler. 2010-05-13 21:21:36 +02:00
Juan RP
a4468b1fe8 pkgtarget_funcs: print a msg while installing the origin pkg. 2010-05-13 17:42:39 +02:00
Juan RP
fdd96d947b buildvars: also (un)set CPPFLAGS and LDFLAGS in the chroot. 2010-05-13 17:42:07 +02:00
Juan RP
65619596d0 stow_funcs: check for file and links before dirs while stowning in the chroot. 2010-05-13 15:28:17 +02:00
Juan RP
8f5898fa63 build_funcs: unset_build_vars before returning. 2010-05-13 15:27:41 +02:00
Juan RP
e675201990 Improve how build deps are processed, return on errors immediately. 2010-05-12 17:23:35 +02:00
Juan RP
c57efc958f install_pkg(): remove another return value test. 2010-05-12 02:16:31 +02:00
Juan RP
a785022b62 reset_tmpl_vars: add do_{build,install}. 2010-05-12 01:51:53 +02:00
Juan RP
8d383c1c83 builddep_funcs: skip some return values from install_pkg(). 2010-05-11 23:39:37 +02:00
Juan RP
622c398a66 build_vars: (un)set PKG_CONFIG also in the chroot. 2010-05-11 22:15:33 +02:00
Juan RP
d3047787ba configure_funcs: unset build vars before return. 2010-05-11 22:10:51 +02:00
Juan RP
f964d9b8fb install_dependencies_pkg(): install_pkg_deps() might return non 0, don't treat this as fatal. 2010-05-11 21:30:01 +02:00
Juan RP
84a4e9e377 {un,-}set_build_vars(): set PKG_CONFIG_LIBDIR. 2010-05-11 15:46:34 +02:00
Juan RP
caf9d4ac62 install_pkg_deps() may return 1 sometimes, do not treat it as fatal error. 2010-05-10 12:18:41 +02:00
Juan RP
2ee55de018 Finally fix fakeroot on Arch linux, return on errors while processing deps. 2010-05-10 12:09:06 +02:00
Juan RP
2850e6ed79 xbps-src-doinst-helper is run via fakeroot so set build vars before and after! 2010-05-10 11:17:58 +02:00
Juan RP
d4441c94d3 set_build_vars(): use different var for LD_LIBRARY_PATH. 2010-05-10 10:41:36 +02:00
Juan RP
81d6978f02 xbps-src: propagate error returned by xbps-src in the chroot.
Rather than pointing the user to cat the .log file, just cat it before exiting.
2010-05-09 19:46:28 +02:00
Juan RP
f6a0806229 xbps-src: piping with tee(1) and groupping command is not possible sometimes... 2010-05-08 09:46:23 +02:00
Juan RP
97811e8af0 Workaround Arch Linux path for libfakeroot, tested and reported by pancake. 2010-05-07 13:45:26 +02:00
Juan RP
22774084ab xbps-src: always create logs for configure/build/install stages in $wrksrc.
Fixed -C and install-destdir in the chroot, $# wasn't consistent :-)
2010-05-07 12:25:24 +02:00
Juan RP
9615930eb4 init_funcs.sh::set_defvars() bailout if required dirs cannot be found. 2010-05-06 22:01:36 +02:00
Juan RP
71aa49c397 buildvars_func.sh::set_build_vars() append to LD_LIBRARY_PATH no overwrite. 2010-05-06 22:00:43 +02:00
Juan RP
481e74178e xbps-src: do not append $PATH to $PATH on every prepare_tmpl() call!
--HG--
rename : xbps-src/shutils/tmpl_funcs.sh => xbps-src/shutils/tmpl_funcs.sh.in
2010-05-06 01:21:27 +02:00
Juan RP
b382fb9c94 shutils/tmpl_funcs: do not overwrite $PATH. 2010-05-04 23:49:09 +02:00
Juan RP
6baa28a6e3 Redirect stderr to a file in ${wrksrc} for run_func().
So that you can use 'set -x' in a template and see the output.

--HG--
extra : convert_revision : 7b3225b2ed3f1fab410c43af12f5d5f66f8504d7
2010-04-29 16:04:09 +02:00
Juan RP
6d01070826 The 'essential' object metadata was removed long ago, fully remove it.
--HG--
extra : convert_revision : d110ecf59b07e84c6930d1212702b67cc4a4112b
2010-04-29 05:20:36 +02:00
Juan RP
ff412882de Improve messages while entering into the chroot.
--HG--
extra : convert_revision : 13354e2dc1a3c13071a9b662f74609ca79a4dd78
2010-04-27 23:22:48 +02:00
Juan RP
522437b90f Multiple improvements for XBPS_PREFER_BINPKG_DEPS.
- Added a new var XBPS_REPO_LIST for the conf file, to specify
  a list of remote repositories to be used in a masterdir.
- Install all required binpkgs in one pass, if that fails install
  one of them at every pass.
- Fixed xbps-src-chroot-helper to properly catch SIG{INT,QUIT}
  when -m is specified.
- Misc cosmetics improvements.

--HG--
extra : convert_revision : 0ad7d559477ccc1fc04ab09deb791343ee453de6
2010-04-27 23:09:08 +02:00
Juan RP
da63915397 Fix 'xbps-src -m' to mount stuff in the correct place.
--HG--
extra : convert_revision : 930efb41ec285f2b65310629fe758397c178d681
2010-04-27 21:52:36 +02:00
Juan RP
cb582f7373 xbps-src: add -m flag and make-repoidx target.
* -m flag to specify a custom XBPS_MASTERDIR, overwritting the value
  from xbps-src.conf.
* make-repoidx target to create a package index plist file for
  the local repository associated with a masterdir, or one specified
  by the -p flag.

--HG--
extra : convert_revision : dbd502b532fd49cd17a79a187488a1e92f361ee0
2010-04-27 01:34:19 +02:00
Juan RP
e3dc3e3066 Added native utilities to mount/umount/chroot via capabilities(7).
Three new helpers will now be installed into ${libexecdir}:
 - xbps-src-capchroot needs to have set CAP_SYS_CHROOT ep.
 - xbps-src-chroot-cap{,u}mount: needs to have set CAP_SYS_ADMIN ep.

That means that libcap and setcap(8) are now required to install
xbps-src and use it as normal user.

--HG--
extra : convert_revision : 586d6526079e085f86bf3e393459d429f6f0ef99
2010-04-26 14:15:49 +02:00
Juan RP
6673252679 Infrastructure changes to simplify the conf file.
* Removed the following vars from the conf file: XBPS_BUILDDIR,
  XBPS_PACKAGESDIR and XBPS_SRCDISTDIR. They are always relative
  to XBPS_MASTERDIR and cannot be changed.
* Removed XBPS_INSTALLDIR, it was unused in the code.
* Prepend /tools/bin in PATH for the chroot.
* Don't register a repo in the chroot if the XBPS_PREFER_BINPKG_DEPS
  is not set.

--HG--
extra : convert_revision : 4df03ffa64f0bbf81cd1dd0baf38f1b7e4f47549
2010-04-26 02:51:48 +02:00
Juan RP
7d9172b9ea Set $XBPS_FETCH_DONE after extracting not fetching.
--HG--
extra : convert_revision : fd65f2da02fd6da2c8a9f169f777d7511888704c
2010-04-24 12:52:29 +02:00
Juan RP
4240afc516 Only check distfiles once, not every time.
--HG--
extra : convert_revision : 6e3a5e715aea21956395018360cae66b8f211d67
2010-04-23 18:45:47 +02:00
Juan RP
0d68a49660 Multiple changes in the infrastructure for improving the (un)stow stuff.
- Added pre_remove/post_remove/post_stow support for templates.

- When stowning pkgs, symlink all files into the chroot. This only works
  for packages that need to be built on it, also templates that set
  stow_copy will copy its files, or selectively via stow_copy_files.

--HG--
extra : convert_revision : 51f47120a5478ceb1319bde01c3ab999f637b359
2010-04-23 15:25:03 +02:00
Juan RP
3fa8a3a284 install_pkg(): exit immediately on errors.
--HG--
extra : convert_revision : ac0332748a5390d3324329a2aa5630ef35e0bf7d
2010-04-22 13:40:53 +02:00
Juan RP
1874cbadda shutils/metadata: return if required stuff fails.
--HG--
extra : convert_revision : c8225a2a9ace45bbc7eed5b309e26336ce94f9ae
2010-04-22 12:06:16 +02:00
Juan RP
70f7b0aaf4 shutils/stow_funcs: use rm -f.
--HG--
extra : convert_revision : d669d311bd19ba41fd6244a62e3430a2c4f71947
2010-04-22 09:02:49 +02:00
Juan RP
33770e8bbc When using run_func() we don't care about stderr output.
--HG--
extra : convert_revision : 618d1c2eda49e1c55abec28d36f3430f37b9b867
2010-04-22 06:50:11 +02:00
Juan RP
8536af44ef run_func: use simply 'type foo', -t is a bash extension.
--HG--
extra : convert_revision : 8a94c0a961f4819bfada61823158c81965d31908
2010-04-21 16:48:58 +02:00
Juan RP
b0c64c181b shutils/metadata.sh: use find(1) -follow.
--HG--
extra : convert_revision : 1815c225aab07ca970d14f1340439d67fee2d88a
2010-04-21 15:29:23 +02:00