Compare commits

..

6 Commits

Author SHA1 Message Date
Pierre Schmitz
0d0e1a9079 repare release 2010-09-06 20:53:26 +02:00
Ionut Biru
b9ea05789d checkpkg: fix extracting soname bumps
extracting the tarball was done from the wrong directory

Signed-off-by: Ionut Biru <ibiru@archlinux.org>
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2010-09-06 20:28:14 +02:00
Pierre Schmitz
79ac757e7f add support for community-staging repository 2010-09-01 20:00:11 +02:00
Pierre Schmitz
a4eabcceaa add makepkg.conf for [multilib] 2010-08-22 21:54:17 +02:00
Pierre Schmitz
b591e69541 add initial [multilib] support 2010-08-22 21:52:23 +02:00
Pierre Schmitz
2f18ca1836 Use findmnt to generate a mtab
Instead of just copying the hosts mtab use findmnt. This way only reachable mount points are shown.
2010-08-22 20:26:33 +02:00
6 changed files with 117 additions and 5 deletions

View File

@@ -1,4 +1,4 @@
V=0.9.9
V=0.9.10
all:
@@ -13,6 +13,8 @@ install:
ln -sf commitpkg $(DESTDIR)/usr/bin/stagingpkg
ln -sf commitpkg $(DESTDIR)/usr/bin/communitypkg
ln -sf commitpkg $(DESTDIR)/usr/bin/community-testingpkg
ln -sf commitpkg $(DESTDIR)/usr/bin/community-stagingpkg
ln -sf commitpkg $(DESTDIR)/usr/bin/multilibpkg
# arch{co,release,rm}
install -m 755 archco $(DESTDIR)/usr/bin
install -m 755 communityco $(DESTDIR)/usr/bin
@@ -29,6 +31,7 @@ install:
ln -sf archbuild $(DESTDIR)/usr/bin/testing-x86_64-build
ln -sf archbuild $(DESTDIR)/usr/bin/staging-i686-build
ln -sf archbuild $(DESTDIR)/usr/bin/staging-x86_64-build
ln -sf archbuild $(DESTDIR)/usr/bin/multilib-build
# Additional packaging helper scripts
install -m 755 lddd $(DESTDIR)/usr/bin
install -m 755 finddeps $(DESTDIR)/usr/bin
@@ -40,6 +43,7 @@ install:
install -m 644 pacman-extra.conf $(DESTDIR)/usr/share/devtools
install -m 644 pacman-testing.conf $(DESTDIR)/usr/share/devtools
install -m 644 pacman-staging.conf $(DESTDIR)/usr/share/devtools
install -m 644 pacman-multilib.conf $(DESTDIR)/usr/share/devtools
uninstall:
# remove all files we installed
@@ -51,6 +55,8 @@ uninstall:
rm $(DESTDIR)/usr/bin/stagingpkg
rm $(DESTDIR)/usr/bin/communitypkg
rm $(DESTDIR)/usr/bin/community-testingpkg
rm $(DESTDIR)/usr/bin/community-stagingpkg
rm $(DESTDIR)/usr/bin/multilibpkg
rm $(DESTDIR)/usr/sbin/mkarchroot
rm $(DESTDIR)/usr/sbin/makechrootpkg
rm $(DESTDIR)/usr/bin/extra-i686-build
@@ -59,6 +65,7 @@ uninstall:
rm $(DESTDIR)/usr/bin/testing-x86_64-build
rm $(DESTDIR)/usr/bin/staging-i686-build
rm $(DESTDIR)/usr/bin/staging-x86_64-build
rm $(DESTDIR)/usr/bin/multilib-build
rm $(DESTDIR)/usr/bin/lddd
rm $(DESTDIR)/usr/bin/finddeps
rm $(DESTDIR)/usr/bin/archco
@@ -71,6 +78,7 @@ uninstall:
rm $(DESTDIR)/usr/share/devtools/pacman-extra.conf
rm $(DESTDIR)/usr/share/devtools/pacman-testing.conf
rm $(DESTDIR)/usr/share/devtools/pacman-staging.conf
rm $(DESTDIR)/usr/share/devtools/pacman-multilib.conf
dist:
git archive --format=tar --prefix=devtools-$(V)/ $(V) | gzip -9 > devtools-$(V).tar.gz

View File

@@ -1,8 +1,13 @@
#!/bin/bash
cmd="$(basename "${0%-build}")"
repo=${cmd%-*}
arch=${cmd#*-}
if [ "${cmd}" == 'multilib' ]; then
repo='multilib'
arch='x86_64'
else
repo=${cmd%-*}
arch=${cmd#*-}
fi
chroots='/var/tmp/archbuild'
clean_first=false
@@ -26,6 +31,11 @@ if [ "$(uname -m)" == 'i686' -a "${arch}" != 'i686' ]; then
exit 1
fi
if [ "$(uname -m)" != 'x86_64' -a "${repo}" == 'multilib' ]; then
echo 'You can only build multilib packages on a x86_64 system'
exit 1
fi
if ${clean_first} || [ ! -d "${chroots}/${repo}-${arch}" ]; then
echo "Creating chroot for [${repo}] (${arch})..."
sudo rm -rf ${chroots}/${repo}-${arch}

View File

@@ -85,7 +85,7 @@ for _pkgname in ${pkgname[@]}; do
if diff filelist-$_pkgname-old filelist-$_pkgname | grep '\.so\.' > /dev/null 2>&1; then
mkdir -p pkg
cd pkg
bsdtar xf "$pkgfile" > /dev/null
bsdtar xf ../"$pkgfile" > /dev/null
for i in `diff ../filelist-$_pkgname-old ../filelist-$_pkgname | grep \> | grep \.so\. | awk '{print $2}'`; do
echo -n "${i}: "
objdump -p $i | grep SONAME

View File

@@ -54,6 +54,12 @@ elif [ "$cmd" == 'communitypkg' ]; then
elif [ "$cmd" == 'community-testingpkg' ]; then
repo='community-testing'
server='aur.archlinux.org'
elif [ "$cmd" == 'community-stagingpkg' ]; then
repo='community-staging'
server='aur.archlinux.org'
elif [ "$cmd" == 'multilibpkg' ]; then
repo='multilib'
server='aur.archlinux.org'
else
if [ $# -eq 0 ]; then
abort 'usage: commitpkg <reponame> [-l limit] [commit message]'

View File

@@ -114,7 +114,7 @@ chroot_mount() {
}
copy_hostconf () {
cp /etc/mtab "${working_dir}/etc/mtab"
chroot "${working_dir}" /bin/findmnt -rnu -o SOURCE,TARGET,FSTYPE,OPTIONS > "${working_dir}/etc/mtab"
cp /etc/resolv.conf "${working_dir}/etc/resolv.conf"
echo "${host_mirror}" > ${working_dir}/etc/pacman.d/mirrorlist
}

88
pacman-multilib.conf Normal file
View File

@@ -0,0 +1,88 @@
#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
HoldPkg = pacman glibc
# If upgrades are available for these packages they will be asked for first
SyncFirst = pacman
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#XferCommand = /usr/bin/curl -C - %u > %o
#CleanMethod = KeepInstalled
Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options (all disabled by default)
#UseSyslog
#ShowSize
#UseDelta
#TotalDownload
#
# REPOSITORIES
# - can be defined here or included from another file
# - pacman will search repositories in the order defined here
# - local/custom mirrors can be added here or in separate files
# - repositories listed first will take precedence when packages
# have identical names, regardless of version number
# - URLs will have $repo replaced by the name of the current repo
# - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#
# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
#[testing]
## Add your preferred servers here, they will be used first
#Include = /etc/pacman.d/mirrorlist
[core]
# Add your preferred servers here, they will be used first
Include = /etc/pacman.d/mirrorlist
[extra]
# Add your preferred servers here, they will be used first
Include = /etc/pacman.d/mirrorlist
#[community-testing]
## Add your preferred servers here, they will be used first
#Include = /etc/pacman.d/mirrorlist
[community]
# Add your preferred servers here, they will be used first
Include = /etc/pacman.d/mirrorlist
[multilib]
# Add your preferred servers here, they will be used first
Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#Server = file:///home/custompkgs