1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-11-17 23:05:00 -05:00
Commit Graph

261 Commits

Author SHA1 Message Date
Dan McGee
ec136784d4 Refactor statfs/statvfs type check
Turn it into a configure-type typedef, which allows us to reduce the
amount of duplicated code and clean up some #ifdef magic in the code
itself. Adjust some of the other defined checks to look at the headers
available rather than trying to pull in the right ones based on
configure checks.

Signed-off-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2010-12-12 20:31:51 -06:00
Allan McRae
e527699ddd Add functions to calculate approximate disk usage by packages
Two helper function are added to calculate the disk usage from packages
that are either currently installed on the system or from a package
archive.

Some minor approximations have been made:

1. Size for directories is not considered when removing a package from the
   filesystem to avoid multiple counting across packages. Also, these are
   reported to take zero size while installing.

2. Symlinks are reported to contribute zero size towards removal as
   libarchive reports them to have zero size for install.

3. Package data files (.PKGINFO, .INSTALL, .CHANGELOG) are counted towards
   usage on dbpath on install, but their size is not counted on package
   removal.

4. No handling of extra size needed for .pacsave/.pacnew files.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-12-12 20:29:54 -06:00
Allan McRae
f4e9deb6d7 Add function for listing system mount points
Add a mount_point_list() function that attempts to portably obtain
a list of system mount points and a struct to hold needed mount point
information.

Abort the transaction if we are unable to determine the mount points.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-12-12 20:29:43 -06:00
Dan McGee
f0051a7678 Remove AC_TYPE_SIGNAL usage
This macro is deemed unnecessary by even the autoconf guys, so we really
don't need to use it.

Signed-off-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-12-12 20:29:30 -06:00
Dan McGee
fc74ef93b6 dirent usage cleanup
We were including the header in a lot of places it is no longer used.
Additionally, use the correct autoconf macro for determining whether
d_type is available as a member: HAVE_STRUCT_DIRENT_D_TYPE.

Signed-off-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-12-12 20:29:20 -06:00
Dan McGee
6eedf06fcc Fix bash shell location check
BASH is defined when you are actually using bash during configure, which
sucks because it ends up being '/bin/sh', messing up all of our scripts.
Change the name of the variable we use in configure, and also ensure we get
a full path to the executable by using AC_PATH_PROGS rather than
AC_CHECK_PROGS. Finally, change the variable name everywhere we use it.

Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-13 17:50:54 -05:00
Nezmer
05f0a28932 Use sysconfdir, localstatedir, BASH instead of hardcoded values
This applies to contrib/ files, our scripts, and the documentation.

Dan: fix 'make clean' in contrib/ directory.

Signed-off-by: Nezmer <git@nezmer.info>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-11 20:29:22 -05:00
Dan McGee
73442a7e03 Only check for function if we are using libfetch
We did this check unconditionally, rather than only doing it if we were
actually going to build and run with libfetch. This is safe because we would
have already bailed if libfetch was explicitly requested but not found.

Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-11 10:06:57 -05:00
Dan McGee
bef19a266b Merge branch 'maint' 2010-10-05 11:15:56 -05:00
Allan McRae
283ef6519a Check for python-2.7
Add python-2.7 to the list of checked versions of python and add a
check for a python2 binary before resorting to the unversioned
python binary.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-05 11:14:31 -05:00
Dan McGee
dff06a8170 Merge branch 'build-system' 2010-09-27 09:21:02 -05:00
Allan McRae
900605912b Add FORTIFY_SOURCE support
Adds a check for the minimum mainline GCC version for FORTIFY_SOURCE
support and enables -D_FORTIFY_SOURCE=2 by default when building with
--enable-debug.

Signed-off-by: Allan McRae <allan@archlinux.org>
2010-09-27 16:06:52 +10:00
Dan McGee
f489e969f0 Update build system (automake, autoconf, libtool)
Unfortunately this patch is hard to split up into smaller chunks. Our build
system and the associated automake/autoconf/libtool macros has been left
untouched for a while, and could use a refresher.

* Upgrade ltmain.sh to the latest version
* Move away from a huge acinclude.m4 directory to using individual files in
  the m4/ subdirectory, suggested by upstream automake documentation
* Update all macros to their latest available version
* Adjust Makefile.am and autogen.sh to accommodate m4/ subdirectory

Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-23 09:10:53 -05:00
Dan McGee
fe788ee4a6 Fix libfetch configure checking
I don't know what I tested in commit 3e7b90ff69, but it definitely wasn't
working as advertised. Fix the checks in the source code itself to match the
right define (HAVE_LIBFETCH), as well as make sure the configure check
defaults to looking for the library but not bailing if it could not be
found.

Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-06 11:20:51 -05:00
Dan McGee
3e7b90ff69 Clean up libfetch checking in configure
Model it after the new OpenSSL check, and have it be a bit more useful. If
you do not explicitly pass a command line option, it will be linked if
available but will not error out if it is missing. Also bump the version to
that where connection caching was introduced as we use these new features in
the codebase.

Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-02 12:30:36 -05:00
Dan McGee
eba521913d Use OpenSSL MD5 crypto functions if available
I've noticed my Atom-powered laptop is dog-slow when doing integrity checks
on packages, and it turns out our MD5 implementation isn't near as good as
that provided by OpenSSL. Using their routines instead provided anywhere
from a 1.4x up to a 1.8x performance benefit over our built-in MD5 function.

This does not remove the MD5 code from our codebase, but it does enable
linking against OpenSSL to get their much faster implementation if it is
available on whatever platform you are using. At configure-time, we will
default to using it if it is available, but this can be easily changed by
using the `--with-openssl` or `--without-openssl` arguments to configure.

Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-02 12:05:23 -05:00
Dan McGee
5a25f54757 Merge branch 'maint' 2010-09-01 21:19:06 -05:00
Dan McGee
9d3a8efb7b 3.4.1 version bump
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-01 21:16:49 -05:00
Allan McRae
68dcabdfbe Remove DBEXT usage
With commit 5dffef78, the repo database always has a symlink
of the form reponame.db.  Use that filename and let libarchive
determine the compression type.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-07-07 07:25:55 -05:00
Allan McRae
0ea52e3a4f makepkg: try standard paths for coreutils du
Attempt to find "du" from coreutils in the standard paths and if
not revert to the version in the users PATH.  Using the full path
prevents issues such as FS#19932, where a different and incompatible
version of du is put earlier in the users path.

Signed-off-by: Allan McRae <allan@archlinux.org>
2010-06-30 08:27:29 -05:00
Dan McGee
7fc50d7950 Revert disabling of make in doc/ dir by default
This is a partial revert of commit d44e5099. By making disabling docs the
default, it presents all sorts of problems- namely anyone who builds from a
tarball and isn't careful enough to include '--enable-doc' will get an
install without any manpages at all. Remember that make includes both
'build' and 'install' steps.

The warning introduced by the commit is kept, so we do not lose all its
benefits, but I am not happy to see regressions introduced in packaging and
installing of this piece of software.

Signed-off-by: Dan McGee <dan@archlinux.org>
2010-06-17 00:01:23 -05:00
Dan McGee
2ee186506c Add test/util directory as necessary to build files
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-06-16 21:00:44 -05:00
Dan McGee
46b170a26e Bump configure.ac versions for 3.4.0 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-06-04 17:02:24 -05:00
Allan McRae
844d82fad8 Move pacman test suite
Move the test suite to test/pacman in order to make a logical
location for a future makepkg test suite.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-06-02 13:14:51 -05:00
Xavier Chantry
d44e509933 configure.ac : disable doc by default and check for asciidoc
This is a complaint that has been reported many many times. By default, docs
are enabled and there is no check for asciidoc, so anyone building from git
will see their build fail.

We cannot do a strict check for asciidoc because released source tarballs
have man pages already built, and it should be possible to install them
without having asciidoc.

This patch attempts to improve the situation in two ways :
1) disable doc by default
2) print a warning if docs are enabled but asciidoc is not installed

Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-05-18 11:30:29 -05:00
Marc-A. Dahlhaus
5752e276fb Allow to include a path containing wildcards
Dan: line wrapping and man page touchup.

Signed-off-by: Marc-A. Dahlhaus <mad@wol.de>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-05-18 11:26:22 -05:00
Dan McGee
6b6eb6345b Fix up the cross-compilation patch library lookup
Don't explicitly add things to the list that might not need to be there, and
get the fallback list of libraries correct.

Signed-off-by: Dan McGee <dan@archlinux.org>
2010-05-04 23:43:43 -05:00
Matthias Lanzinger
bf7c3eb17f Fix cross-compilation issues with git and libfetch
This patch fixes 2 issues I encountered when cross-compiling pacman.
First is the test for libfetch which requires explicit linking to all
libraries libfetch depends on.

The other problem results from the AC_CHECK_PROGS test for git. This
test will stop configure with an error when cross-compiling.
The fix moves the call to AC_CHECK_PROG so that is only called of
--enable-git is actually set.

Signed-off-by: Matthias Lanzinger <mlaenz@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-03-25 21:28:01 -05:00
Cedric Staniewski
5fe41df8a9 makepkg: make strip options configurable
The newly added variables STRIP_BINARIES, STRIP_SHARED and STRIP_STATIC,
that are set in makepkg.conf, specify the strip options used on binaries
and shared and static libraries.
In addition, files are now stripped more aggressively by default.

Implements FS#13592 the way it was suggested by Allan in the comments.

Signed-off-by: Cedric Staniewski <cedric@gmx.ca>
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-03-14 18:34:16 -05:00
Dan McGee
e09253d15b Necessary updates for 3.3.3 release
Should cover everything worth mentioning in NEWS, plus the version number
bumps as usual.

Signed-off-by: Dan McGee <dan@archlinux.org>
2009-11-10 16:18:05 -06:00
Dan McGee
a131c468f7 3.2.2 release changes
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-10-04 16:59:48 -05:00
Dan McGee
20aa17c276 repo-add: make sure we get size of target file
If the package we were adding was a symlink, we stuck the symlink size in
the database rather than the size of the file it referred to. Whoops!

Signed-off-by: Dan McGee <dan@archlinux.org>
2009-09-23 19:11:34 -05:00
Dan McGee
ed9d459ee2 Updates in prep for 3.3.1 release
Bump versions in configure.ac; update NEWS accordingly

Signed-off-by: Dan McGee <dan@archlinux.org>
2009-09-16 20:43:48 -05:00
Henning Garus
a05757f984 Configure: Check if libfetch version is >= 2.21
Commit 6f97842 started using libfetch's conditional GET. This requires
libfetch to be version 2.21 or greater.

Change configure.ac to check for the existence of the last_modified field in
the url struct, which was introduced with libfetch 2.21.

Signed-off-by: Henning Garus <henning.garus@gmail.com>
[Xav : moved AC_CHECK_MEMBER outside of AC_CHECK_LIB]
Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-09-06 15:33:34 -05:00
Xavier Chantry
8a55b79363 re-add -g CFLAGS with --enable-debug
after commit 8feccaed78, -g was no longer added with
--enable-debug.

So if CFLAGS was set (if unset, it defaults to -g -O2) and didn't contain
-g, we ended with no debug symbols..

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-08-18 20:38:08 -05:00
Dan McGee
4eb1469765 Version bump for 3.3.0
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-08-01 13:35:59 -05:00
Allan McRae
f569c4a042 makepkg: several small fixes
1) Do not attempt to strip compressed binaries
Original-work-by: Marc - A. Dahlhaus <mad@wol.de>

2) Add "\" in "GPL\'ed" so quote mark does not break source code highlighting

3) Add local to docdir paths in makepkg.conf for consistency

4) Use full path to sed in MacOSX in case users have GNU sed earlier in
path

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-05-11 21:23:46 -05:00
Allan McRae
c27904661e makepkg: make in-place sed portable
Do a sed replacement in-place is not very portable.  On Mac OSX and
BSDs, the syntax is "sed -i ''" where as with GNU sed the command is
"sed -i''" or just "sed -i".  This patch detects which command should
be used during configure.

Credit to Kevin Barry who researched this issue and provided a patch
to work around this using temporary backup files.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-04-26 09:22:23 -05:00
Dan McGee
d8d9ab8c87 Update checks for python in configure
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-02-28 15:46:51 -06:00
Kevin Barry
14c1a4423e configure.ac: use full path of stat for Mac OS X
Change configure.ac to use the full path of stat when on darwin/mac.
This is needed for situations when a user installs the GNU/coreutils
and places it in their path before /usr/bin, but the SIZECMD is
already configured for Darwin's version of stat.

Signed-off-by: Kevin Barry <barryk gmail com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-02-16 08:06:29 -06:00
Xavier Chantry
8017b0bb8e Remove libdownload support and fix libfetch one.
Aaron said to consider libdownload a dead project so libdownload support was
removed to more easily fix libfetch one (otherwise many ifdef needed).

There was no direct replacement for ferror to detect an error while
downloading. So instead, I added a check at the end to see if the file was
fully downloaded, which is just a small chunk of code taken from here:
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/net/libfetch/files/fetch.c?only_with_tag=MAIN

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-12 22:40:15 -06:00
Dan McGee
0501d340cd Merge branch 'maint' 2009-01-06 20:22:15 -06:00
Dan McGee
cebe36c42c Update configure.ac for 3.2.2 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-04 11:34:47 -06:00
Allan McRae
8f26bb9052 makepkg: move BUILDSCRIPT from makepkg.conf
Commit 4b183bf9 moved makepkg.conf sourcing to after the parsing
of options, breaking the -p option and --help output.  The solution
is to move BUILDSCRIPT out of makepkg.conf.  This patch moves the
definition BUILDSCRIPT back to makepkg itself and adds configure
option to allow easy changing of this value during build time.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 00:13:54 -06:00
Dan McGee
fa02a71abd Merge branch 'maint' 2008-10-12 21:36:45 -05:00
Dan McGee
d7e502a467 Attempt to idiot-proof making and refreshing docs
I mess this up more often than not, and maybe this will do the trick. Remove
the --enable-asciidoc option as it has been superseded by the --disable-doc
option in usefulness. If you want to skip building docs, you skip building
all docs which is much easier when it comes to ensuring the make 'dist' and
'distcheck' targets will always build the manpages and always build the most
up to date manpages.

Developers shouldn't be affected in their normal builds, nor should end
users of the source tarball.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-12 21:29:33 -05:00
Dan McGee
1c47500ea6 Merge branch 'maint' 2008-08-26 20:11:25 -05:00
Dan McGee
8263bd0cc2 Updates in preparation for 3.2.1 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-25 18:23:57 -05:00
Henning Garus
ec928faad3 Add autotools magic for pactests
Added a Makefile.am for the pactest/tests dir. This is a blatant ripoff
of scripts/Makefile.am, which replaces predefined expressions in
NAME.py.in pactests with configure variables.
This can be used to write pactests which consider compile time options.

Signed-off-by: Henning Garus <henning.garus@gmail.com>
[Dan: autotools are tough, make a few adjustments for correctness]
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23 18:00:37 -05:00
Dan McGee
282eeadc68 Factor shell script size command into configure script
Commit 149839c539 introduced a small behavior regression as a drawback
for a better portability. repo-add now includes the approximate size (to the
nearest KB) rather than an exact size due to the switching of the du command
to a more portable form. Instead of sacrificing the exact size, use
configure to help us determine a valid command to acquire our filesize and
place it in the sync database.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-19 23:29:56 -05:00
Dan McGee
fabf7ad6c4 Version bumps to configure for 3.2.0 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-30 19:28:07 -05:00
Dan McGee
e6fb229534 Remove unused strverscmp substitute
Our internal vercmp function was the only user of this, and it no longer
relies on it.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-24 22:16:28 -05:00
Dan McGee
95995ae93f Remove pacman.static build from build files
This presents plenty of problems on OSes besides Linux, and even on Linux
when the libtool file for libarchive isn't present. The static build isn't
all that useful anyway as missing something such as glibc will still leave
you unable to run the pacman.static binary. Remove it from the formal build
process.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-15 19:05:24 -05:00
Dan McGee
636610432a Allow GIT version to be used in pacman builds
Add a new configure flag, --enable-git-version, that allows the output of
'git describe' to be used in the version string associated with this
package. This could aid in debugging for users that are using a development
version of pacman and we should be able to figure out which cut of code they
are using.

Sample output:
$ pacman --version
Pacman v3.1.4-190-g4cfa-dirty - libalpm v2.3.1

$ makepkg --version
makepkg (pacman) 3.1.4-190-g5861-dirty

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-31 12:06:34 -05:00
Dan McGee
7a873a8f12 Give libalpm native support for both libdownload and libfetch
This should remove the need for any additional patching to run on platforms
that have libfetch available but not libdownload. It isn't the prettiest,
but we have kept our libdownload impact down to just a few files, so it can
be easily done.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-04-19 16:18:17 -05:00
Dan McGee
bf84c23266 Merge branch 'maint' 2008-04-15 19:07:51 -05:00
Dan McGee
c7a81c0b54 More non-Linux build updates, mostly Darwin
Darwin's binary format does support symbols with differing visibilities, but
it does not support the protected or internal visibilities- only hidden. For
Darwin only, we should fall back to this visibility to prevent warnings from
the compiler and because it is close enough for our library purposes.

See http://gcc.gnu.org/viewcvs/*checkout*/trunk/gcc/config/darwin.c, search
for the "darwin_assemble_visibility" function for more details.

Also add pacman.static.exe to gitignore.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-04-15 15:57:36 -05:00
Dan McGee
57acfced0d Update configure.ac to current code
Remove a few functions and things that were unnecessary, update the help
line calls to the current function name, and make the small change to
pacman.c for the signal handler return type that is defined in config.h.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-04-07 19:27:35 -05:00
Dan McGee
83c4b2aebb Merge branch 'maint' 2008-04-07 19:19:34 -05:00
Dan McGee
bec2ba5b40 Add check for swprintf() and a workaround when it is missing
We use this function once in our codebase, but fortunately the workaround is
relatively easy. swprintf() is not available on Cygwin so the compile failed
there, but we can do a series of mbstowcs() calls that produce the same end
result as the swprintf() call.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-04-07 19:09:46 -05:00
Dan McGee
a708c6eadc Allow disabling of internal (libdownload) code
Add a new --disable-internal-download flag to configure allowing the
internal download code to be skipped. This will be helpful on platforms that
currently don't support either libdownload or libfetch (such as Cygwin) and
for just compiling a lighter weight pacman binary.

This was made really easy by our recent refactoring of the download code
into separate internal and external functions, as well as some error code
cleanup.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-04-06 21:00:11 -05:00
Dan McGee
073bac794d Merge branch 'maint'
Conflicts:

	configure.ac
	contrib/Makefile.am
2008-04-01 22:14:58 -05:00
Dan McGee
0b8abf376f Update NEWS and configure.ac for 3.1.4 release
Also fix a broken contrib/ Makefile, found with make distcheck. I also let
the little translation linebreak update slip in here as it was small enough
not to be a big deal, and this should just prevent it from happening again
later anyway.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-04-01 22:04:56 -05:00
Dan McGee
91b7f288fe Merge branch 'maint'
Conflicts:

	configure.ac
2008-03-09 12:03:54 -05:00
Dan McGee
5a48771126 Updates before 3.1.3 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-06 20:47:00 -06:00
Dan McGee
d75f693155 Merge branch 'maint'
Also bump the devel version on the master branch to 3.2.0devel.
2008-02-25 20:49:59 -06:00
Dan McGee
8efe0ecb25 Bump pacman version to a devel release and next version number
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-25 20:35:25 -06:00
Dan McGee
3ad3077d8d Merge branch 'maint'
Conflicts:

	src/pacman/callback.c
2008-02-24 01:22:07 -06:00
Dan McGee
8ded60326a Updates before 3.1.2 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-20 19:02:51 -06:00
Dan McGee
5647f7f512 Update libtool version (1.5.24 -> 1.5.26)
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-02 09:53:18 -06:00
Dan McGee
3b464dc897 Final changes before 3.1.1 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-19 14:50:15 -06:00
Chantry Xavier
eccda0dfad Fix some left over of a0ac72b42.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-15 21:57:23 -06:00
Dan McGee
abd14fdac0 Bump version to devel
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-10 22:58:19 -06:00
Dan McGee
079f5a8346 Update configure.ac version for release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-09 18:04:12 -06:00
Dan McGee
26c05b1c8c Ensure that manpages are always distributed and installed
Commit 012f793978 was a bit misguided in its
thinking, and resulted in a package built without asciidoc enabled not
installing the manpages to the system on a 'make install' operation. Fix
this behavior by making manpages required in a normal build, and in order to
disable their existence, the '--disable-doc' option must be used.

Hopefully this solves manpage issues for both developers and package
builders while allowing as much flexibility as possible.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-28 20:06:58 -06:00
Dan McGee
741fa31603 Remove abs from the pacman repository
abs has always been an Arch Linux specific tool, and although it is used
primarily by pacman and makepkg, it should not be included with a distro-
agnostic tarball. In addition, maintenance of the script would be better
outside of pacman and would allow for more frequent updates.

This also facilitates our move away from a cvsup/csup dependent tool for
syncing PKGBUILDs.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-21 11:05:38 -06:00
Dan McGee
103c3ac5a7 configure: Doxygen is disabled by default; manpages are included in dist
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-13 00:13:05 -06:00
Dan McGee
ec6a7d689b Return libalpm version number to being dot-separated
I think I goofed this up when making the big overhaul of configure.ac.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-13 00:13:05 -06:00
Dan McGee
e5be26fb23 Make building of pacman.static optional
Because building of pacman.static fails on some platforms, we should make
it optional. It is enabled by default but can be disabled with the use of
the --disable-pacman-static flag.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-04 10:42:08 -06:00
Dan McGee
c26fe63ee5 Add some more autoconf macros to filter our CFLAGS usage
Hopefully these new autoconf macros, with a little magic, will allow us to
compile with any compiler and still choose the options we have available
to us.

Tested locally with gcc 4.2.2 and gcc 3.4.6; the latter doesn't support two
of the items we previously had hardcoded in our CFLAGS.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-04 10:42:07 -06:00
Dan McGee
8feccaed78 Use an autoconf macro to see if -fstack-protector is available
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-04 10:42:07 -06:00
Dan McGee
288dd54982 Revise configure.ac
Do a little cleanup of our configure script. Highlights:

* Remove macros deemed unnecessary to call [1]
* Change check for compiler to look for one that is C99 capable-
  this automatically adds the -std=gnu99 flag

[1] Noted in the autoconf NEWS file, notably entries for 2.59d

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-04 10:42:07 -06:00
Dan McGee
0ea43089e1 Remove final use of the math library from pacman
To round a value, we don't need floorf- we can just cast to an int.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-04 09:49:30 -06:00
Dan McGee
ac79135b94 Pick best python program available for 'make check'
Use an autoconf macro to find us a python executable, preferring python2.5
if we can find it. From there, fall back to python2.4 and then python.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-10-30 00:20:18 -05:00
Dan McGee
a8731ff2f7 Fix mcheck detection and usage
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-10-26 20:31:25 -05:00
Dan McGee
708488f6fe Merge branch 'asciidoc' into working
We're getting close to release, so might as well do this now so people can
actually update some of our documentation.
2007-09-16 21:10:44 -05:00
Dan McGee
e24bcc395e configure.ac: Remove the hyphen from the version suffix
Also switch out outdated PACKAGE_STRING variable for pacman_display_version.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-08-21 23:37:04 -04:00
Dan McGee
3acbf56bba Clean up architecture handling in configure.ac
Remove the need for two variables for the architecture-specific switches
(things like "-march=i686") by combining it into one variable. Also allow
configure to proceed with only a warning if we don't have presets for the
detected architecture- it is kind of stupid to restrict ourselves like we
had been.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-08-20 00:38:37 -04:00
Dan McGee
16c91bedf8 configure.ac: Clean up and document version number increments
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-08-16 15:27:38 -04:00
Dan McGee
49c29e16b3 Code cleanup
Remove the commented desc_localized stuff, we can find it later in version
control. Also remove some unnecessary includes of the stat header and
use -fstack-protector-all which is a bit more broad.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-08-14 09:33:55 -04:00
Dan McGee
20f73d6299 Remove versioncmp.{c,h}, clean up selective #ifdefs
Remove versioncmp.c by moving all functions to locations that make sense.

Move replacement functions (for building without glibc) into util.c where
they belong, and do proper checks for them instead of using __sun__, etc.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-12 15:20:43 -04:00
Dan McGee
8f2575b26e Add AC_SYS_LARGEFILE to configure.ac
This defines _FILE_OFFSET_BITS == 64, which makes stat calls transparently
use stat64, etc. This allows us to support large files, such as packages
over 1 GB in size. libarchive was already correctly compiled with this macro.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-09 16:40:50 -04:00
Dan McGee
d2613b97fa Add asciidoc checking to configure.ac, make manpage generation optional
Include manpages when we ship a package tarball, and allow them to be
generated by the end user if they want by using the --enable-asciidoc option
to ./configure. This will allow us to maintain manpages in an easier to modify
format while still keeping the make dependencies to a minimum.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-09 14:38:02 -04:00
Dan McGee
49f447d02c First step of moving translations from src/pacman/po to po/
Move the translations from src/pacman/po to just po/ so we can include the
scripts gettext translations in the same message catalog as that of the
pacman frontend. The libalpm message catalog, for now, will remain a separate
existence.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-06 17:59:08 -04:00
Dan McGee
7daa6708d2 Remove lockfile configuration from frontend, make it job of libalpm
I previously introduced some patches to make just about every path in
pacman/libalpm configurable; doing this with the lockfile seemed a bit too
far and we really should just place the lockfile where it belongs- with the
DB that needs locking.

More details in this thread:
http://archlinux.org/pipermail/pacman-dev/2007-June/008499.html

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-27 23:34:38 -04:00
Dan McGee
af813a8bad Add ARM architecture to configure.ac
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-13 01:12:22 -04:00
Dan McGee
a7f417f35c Update configure.ac with a few new functions to check for
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-09 12:57:49 -04:00
Andrew Fyfe
e0afe6e94a Autotool clean up.
* Add vim modeline to Makefile.am and configure.ac
	* Fix white space in Makefile.am and configure.ac
	* Add contrib/wget-xdelta.sh to EXTRA_DIST in Makefile.am

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-04 22:24:29 -04:00
Dan McGee
d9ff7bbcd2 Remove hardcoded defines from libalpm
Remove any use of the former path variables defined by the Makefiles or
config.h. These are now runtime configurable only with pacman.conf (or by
using flags on the command line).

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-04 17:00:30 -04:00
Roman Kyrylych
508d5cb3a3 Correct descriptions of configure options
Signed-off-by: Roman Kyrylych <roman@archlinux.org>
Signed-off-by: Dan McGee <dpmcgee@gmail.com>
2007-06-03 21:45:06 -04:00
Andrew Fyfe
6d649473fa FS7319: Add option to disable the inclusion of abs script.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-05-31 18:44:00 -04:00
Andrew Fyfe
e422b71a48 Add autotool substitution for SRCEXT.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-05-31 14:30:41 -04:00
Andrew Fyfe
139d3c5e99 Autotool fixes/cleanup.
* configure.ac: Add AC_SUBST() for ROOTDIR, PKGEXT, DBEXT so
	they get exported to Makefiles.
	* {makepkg,pacman}.conf.in: Remove extra / from paths.

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-31 17:24:24 +01:00
Dan McGee
7bd2ff6851 Move DB and cache dirs away from there dependence on ROOTDIR
This change allows us to use all autoconf specified paths, most notably
$(localstatedir). It is quite a change and touches a lot of files, as
all references to the DB and cache were done with the ROOTDIR as a prefix.

* add --lock command-line option to pacman to specify the location of the
  lockfile (this can now be specified at configure time by setting the
  $localstatedir path).
* Rip quite a few settings out of configure.ac as they are now picked by
  setting the paths during configure or make.
* Fix bug with /tmp fallback for sync downloads not working correctly
  (related to root location, now the system tmp dir is used).
* Simplified the parameters to some libalpm functions, and added get/set
  for the new lockfile option.
* Renamed several of the DEFS to names without the PM_ prefix.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-05-31 02:51:28 -04:00
Dan McGee
a6129bb789 Finish making autoconf changes
Fix up everything in the etc/ directory so it is built at make-time and
not configure-time. This reduces configure generated files to just the
makefiles, which is the correct way to do things. This also allows a switch
from @@REPO@@ to the more sane @REPO@ in mirrorlist.in, and kills the
two-part generation of the mirror files.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-05-30 11:46:37 -04:00
Dan McGee
b6387b954f scripts: do autoconf path replacement right
This should finally get the path replacement in our scripts right. This
is the way the autoconf package itself does it and should not need much
further tweaking.

Threw in a few trailing whitespace corrections from the scripts as well.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-05-30 11:04:49 -04:00
Dan McGee
dd926c7a1c Modernize and update configure.ac
Using the autoscan tool, ensure we are doing the checks we should be doing
in configure.ac. There is still more work to do, but this is a start at
cleaning up the file a bit to make it much easier to change in the future.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-05-30 09:04:36 -04:00
Andrew Fyfe
5c41d0eb4c Substitute config directory in scripts.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-29 17:49:24 -04:00
Dan McGee
f3836ff8e8 Set paths in pacman-optimize to use configure-time paths
By setting up a few more AC_SUBST macros in configure.ac, we can fill in
paths in the scripts on the fly instead of having them in multiple places.

Other small fixes:
* Fix an oops on my last commit where I had some lines stil commented.
* Fix makepkg bug where the generated package name using PKGEXT had two
  periods (..).

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-05-29 17:46:20 -04:00
Dan McGee
103c7243a2 Get --help and --version options working on all scripts
Added the autoconf option std-options to the scripts/ directory, which
checks to ensure all programs have both --help and --version options. A
few things needed cleaning up to get this working. To test these types
of options, use the 'make distcheck' target.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-05-29 16:53:15 -04:00
Andrew Fyfe
e9e19b7cc6 autotool scripts/updatesync
- move scripts/updatesync -> scripts/updatesync.in
	- add -V --version options to scripts/updatesync.in
	- add autotool commands to generate scripts/updatesync

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-27 17:16:28 -04:00
Andrew Fyfe
48946b624b autotool scripts/repo-remove
- move scripts/repo-remove -> scripts/repo-remove.in
	- add -V --version options to scripts/repo-remove.in
	- add autotool commands to generate scripts/repo-remove

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-27 17:16:27 -04:00
Andrew Fyfe
f6b0869ee5 autotool scripts/repo-add
- move scripts/repo-add -> scripts/repo-add.in
	- add -V --version options to scripts/repo-add.in
	- add autotool commands to generate scripts/repo-add

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-27 17:16:27 -04:00
Andrew Fyfe
95720106bb autotool scripts/pacman-optimize
- move scripts/pacman-optimize -> scripts/pacman-optimize.in
	- add -V --version options to scripts/pacman-optimize.in
	- add autotool commands to generate scripts/pacman-optimize

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-27 17:16:27 -04:00
Andrew Fyfe
ab53ee1e7c autotool scripts/makeworld
- move scripts/makeworld to scripts/makeworld.in
	- add -V --version options to scripts/makeworld.in
	- add autotool commands to generate scripts/makeworld

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-27 17:16:27 -04:00
Andrew Fyfe
a2d018a954 autotool scripts/gensync
- move scripts/gensync -> scripts/gensync.in
	- add -V --version options to scripts/gensync.in
	- add autotool commands to generate scripts/gensync

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-27 17:16:27 -04:00
Andrew Fyfe
2b6bc5bcda autotool scripts/abs
- move scripts/abs -> scripts/abs.in
	- add -V --version options to scripts/abs.in
	- add autotool commands to generate scripts/abs

Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
2007-05-27 17:16:27 -04:00
Dan McGee
ea327cab84 Bump up the version numbers a bit for the development branch
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-04-28 20:07:17 -04:00
Aaron Griffin
76f816b9f7 Backport changes from 3.0.1
* Align makepkg -g checksums (Tom Killian <tom@archlinux.org>)
* Use additional case-sensitive string compare to defeat locale issues (tr_TR)
* Added Russian mirror
* Fix a -R failure when trying to remove the same target twice
* Bump configure.ac version to 3.0.1

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2007-04-04 00:30:14 -05:00
Giovanni Scafora
f044e23a60 Gettext support in makepkg
Add gettext support to makepkg. Still to do- figure out for sure what
textdomain the translations should go in (perhaps share with pacman?), and
ensure this doesn't break anything.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-03-31 20:30:35 -04:00
Dan McGee
583b4b10a3 Move makepkg -> makepkg.in in anticaption of gettextized version
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-03-31 20:30:35 -04:00
Dan McGee
b8602adee9 Remove --disable-fakeroot option from configure.ac
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-03-31 20:28:41 -04:00
Dan McGee
c3ad8bd75f Make all paths and file locations configurable
Several important paths, file locations, and extensions were #define-d in the
source code instead of being configurable. This moves all of these to
the configure script where they can be picked upon running ./configure. We
may later want to make some of these even more visible and move them to
pacman.conf.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-03-30 15:55:58 -04:00
Dan McGee
e9ee9045ff Remove unnecessary $ENV_CFLAGS from configure.ac
CFLAGS are used at build time, not configure time. We don't need to get the
CFLAGS from the environment during configure.

Signed-off-by: Dan McGee <dan@archlinux.org>
2007-03-30 15:55:58 -04:00
Dan McGee
5579607899 * Updated Italian translation
Giovanni Scafora <linuxmania@gmail.com>
* added '-fstack-protector' flag to debug compile, to catch any buffer
  overflows we may have in stack variables.
2007-02-24 20:25:45 +00:00
Dan McGee
6fc803258a * Removed man2html stuff from configure. It is now available in the doc/
directory by running the target man2html, e.g. 'make man2html'.
* Slightly fixed up the bottom of the manpages.
2007-02-23 03:23:06 +00:00
Dan McGee
c799433e42 * Updated distcheck target- added some flags so pactest is 100% correct.
* Added a Makefile.am so contrib/ folder is included in dist.
2007-02-23 02:00:30 +00:00
Dan McGee
332c127109 Big commit here, I'll try to cover all the bases.
* Updated all of the language files, as the POT file was updated. NOTE FOR
  TRANSLATORS, try to base your next contribution off of these, notice how
  some msgids and messages have been wrapped to the next line- it makes it
  easier to read anyway.
* More Makefile.am/configure.ac updates. 'make dist' and 'make distclean' now
  work properly, with only one caveat- the automatic testing in distclean
  doesn't do so hot as it is compiled with a default configure, which includes
  the fakeroot-proof code (which does not cooperate with pactest).
* Added a Makefile.am for the pactest directory.
2007-02-22 21:34:51 +00:00
Dan McGee
3595201f5f * A lot of Makefile.am updates to try to get 'make dist' and 'make distcheck'
to work as expected.
2007-02-22 04:36:02 +00:00
Aaron Griffin
a7e610c37d Changed "MARCHFLAG" to "ARCHSWITCH" as the name was confusing (it's not a FLAG
and not always MARCH).  Also changes makepkg.conf.in to not have commented -mcpu
lines (due to the above), but to have a comment about the differences in -march
and -mcpu
2007-02-13 01:25:26 +00:00
Aaron Griffin
4d494a39e7 Fix some x86_64 configuration handling 2007-02-13 00:57:08 +00:00
Dan McGee
622608985d Forgot to remove a few files from configure.ac 2007-02-07 23:03:30 +00:00
Dan McGee
82de7efbf9 Greatly simplify the way our non-existant translated manpages were being
made. Ripped out all the po4a stuff, letting us cut down on yet another
makedepends.
Also moved all of the manpages to non-.in names.
2007-02-07 22:29:21 +00:00
Jürgen Hötzel
93b0e76287 * removal of swig generated bindings 2007-02-01 19:47:39 +00:00
Jürgen Hötzel
e70a3e8074 * removal of swig generated bindings 2007-02-01 19:47:39 +00:00
Jürgen Hötzel
d9b4d3f75c * doxygen check cleanup 2007-01-30 20:37:59 +00:00
Aaron Griffin
8c73128c77 Turn debug off by default 2007-01-30 08:17:02 +00:00
Jürgen Hötzel
13f9fc4d19 * Fix building outside $(srcdir).
* Removed ./gen-mirrorlist.sh invocation from configure script:
  Mirror-files are generated by make, not configure.
2007-01-29 22:18:31 +00:00
Aaron Griffin
e22336673a Dan McGee <dpmcgee@gmail.com>
* Lots of code cleanup, and type fixes
* Make 'makeworld' a bit more in-line with the other stuff
* Make -Si and -Qi operations appear the same
2007-01-26 02:13:16 +00:00
Aaron Griffin
2ae56f4bc9 * Dan McGee <dpmcgee@gmail.com>
remove configure check for bzip2
2007-01-11 17:34:51 +00:00
Aaron Griffin
2546a35cd5 Configuration changes:
* Added libdownload check in configure.ac
* Added generation for mirrorlists in pacman.d
    NOTE: autoconf sucks for things like this, so gen-mirrorlist is required

Dan McGee <dpmcgee@gmail.com>:
    * mirrorlist.in file

Roman Kyrylych <roman.kyrylych@gmail.com>:
    * ukrainian mirror

Jürgen Hötzel <juergen@hoetzel.info>:
    * conditional build for pacman.static
2006-12-28 16:54:35 +00:00
Aaron Griffin
e3aace4a4d Cleanup from Dan McGee <dpmcgee@gmail.com> and Jürgen Hötzel <juergen@hoetzel.info>
* configure swig check
* misc libalpm cleanup
2006-12-22 19:38:55 +00:00
Aaron Griffin
1bdf36f419 * Jrgen Htzel <juergen@hoetzel.info>
Fixe java swig requirement for configure
2006-12-21 17:15:24 +00:00
Aaron Griffin
a551289265 * Added etc/abs dir to configure generated makefiles 2006-12-19 07:49:51 +00:00
Aaron Griffin
b308f06a3a * Dan McGee's makepkg updates http://www.archlinux.org/pipermail/pacman-dev/2006-December/000792.html
* configure fixes (CFLAGS)
* no-strict-aliasing hacks until full C99 compliance
* --with-config-file configure option
2006-12-14 05:23:08 +00:00
Aaron Griffin
aa1c0ba9f8 * repo-add script - to add entries to a db file directly from package data (no PKGBUILD)
* libalpm api changes - move from a _getinfo(p, WHAT_WE_WANT) scheme to a
  typesafe _get_what_we_want(p) scheme [not 100% complete yet]
* some const correctness changes
* removal of PM_* types in alpm.h in favor of the pm*_t types used throughout
  libalpm
2006-11-20 09:10:23 +00:00
Aaron Griffin
eb514bee96 * autotool fixes
* Renamed "download" files to "downloadprog" as it only holds the progress bar
  and to not confuse (myself) with <download.h>
2006-11-14 08:07:57 +00:00
Aaron Griffin
34931106d7 Added mcheck support for memory debugging 2006-11-07 16:32:48 +00:00
Aaron Griffin
48ee3c4434 Removed user-CFLAGS during a debug build. Added -Wall to normal build(I like -Wall) 2006-10-31 16:00:30 +00:00
Aaron Griffin
a105718fd7 * Makefile changes for libfetch integration
* Fixed the --enable-debug option in ./configure (never worked)
2006-10-31 06:43:13 +00:00