More modded PKGBUILDs

This commit is contained in:
Mike Staszel 2009-09-26 11:05:27 -05:00
parent c610cec5bd
commit ae6a01c023
67 changed files with 70 additions and 18739 deletions

View file

@ -1,7 +1,5 @@
# Maintainer: Krzysztof "hiciu" Warzecha <kwarzecha7@gmail.com>
#
### Attention: remove old pkg before building - it links against itself! ###
#
# Modified by OpenPogo
pkgname=heimdal
pkgver=1.2.1
@ -11,7 +9,7 @@ arch=('arm')
url="http://www.h5l.org/"
license=('custom')
depends=('db>=4.7' 'openssl' 'e2fsprogs' 'sqlite3')
backup=(etc/krb5.conf)
backup=(opt/etc/krb5.conf)
options=('!libtool' '!emptydirs')
source=(http://www.h5l.org/dist/src/${pkgname}-${pkgver}.tar.gz
001_all_heimdal-no_libedit.patch
@ -40,12 +38,12 @@ md5sums=('6e5028077e2a6b101a4a72801ba71b9e'
'949a389ebe7652861b2e178a7e0f1ed9'
'072f6b2550693adb30117394b1dd354e'
'7b4537b0e8bde95214211091e55eacf5'
'e59650992b9541a30dfce727a194f6e0'
'1f2f86a67bbfddb7af581d35fdca9627'
'f8f1eca95b9d3f2b4ebf2417b71b81cf')
'776d599359946c10ae5e434463cd66c1'
'64363cd23086bdd7c02b81963831f014'
'72c9f384734e787a6efc6fd25348cc3b')
build() {
[ -e /usr/lib/libasn1.so ] && echo "## remove old heimdal pkg first ##" && return 1
[ -e /opt/lib/libasn1.so ] && echo "## remove old heimdal pkg first ##" && return 1
cd ${srcdir}/heimdal-${pkgver}
patch -Np0 -i ${srcdir}/001_all_heimdal-no_libedit.patch || return 1
@ -60,7 +58,7 @@ build() {
patch -Np2 -i ${srcdir}/heimdal-r23235-kb5-libwind_la.patch || return 1
patch -Np2 -i ${srcdir}/heimdal-r23238-kb5_locl_h-wind_h.patch || return 1
sed -i -e 's|var/heimdal|var/lib/heimdal|g' configure.in \
sed -i -e 's|opt/var/heimdal|opt/var/lib/heimdal|g' configure.in \
doc/setup.texi doc/heimdal.info kadmin/kadmind.8 kdc/kdc.8 \
lib/hdb/hdb.h lib/krb5/krb5.conf.5 lib/krb5/krb5.conf.cat5
@ -70,58 +68,58 @@ build() {
automake || return 1
export LDFLAGS="${LDFLAGS} -Wl,--as-needed"
./configure --prefix=/usr --enable-shared=yes --without-x \
--sysconfdir=/etc --mandir=/usr/share/man \
--datadir=/var/lib/heimdal \
--localstatedir=/var/lib/heimdal \
--with-openssl=/usr \
--with-readline-lib=/usr/lib \
--with-readline-include=/usr/include/readline \
--libexecdir=/usr/sbin
./configure --prefix=/opt --enable-shared=yes --without-x \
--sysconfdir=/opt/etc --mandir=/opt/share/man \
--datadir=/opt/var/lib/heimdal \
--localstatedir=/opt/var/lib/heimdal \
--with-openssl=/opt \
--with-readline-lib=/opt/lib \
--with-readline-include=/opt/include/readline \
--libexecdir=/opt/sbin
make || return 1
make DESTDIR=${pkgdir} install || return 1
# Remove editline, we use libreadline. This library is broken anyways, so nobody misses it after removal
rm ${pkgdir}/usr/lib/libeditline.* || return 1
rm ${pkgdir}/usr/include/editline.h || return 1
rm ${pkgdir}/usr/share/man/man3/editline.* || return 1
rm ${pkgdir}/opt/lib/libeditline.* || return 1
rm ${pkgdir}/opt/include/editline.h || return 1
rm ${pkgdir}/opt/share/man/man3/editline.* || return 1
# Rename daemons and their manpages
for i in telnetd ftpd rshd; do
mv ${pkgdir}/usr/share/man/man8/${i}.8 ${pkgdir}/usr/share/man/man8/k${i}.8 || return 1
mv ${pkgdir}/usr/sbin/${i} ${pkgdir}/usr/sbin/k${i} || return 1
mv ${pkgdir}/opt/share/man/man8/${i}.8 ${pkgdir}/opt/share/man/man8/k${i}.8 || return 1
mv ${pkgdir}/opt/sbin/${i} ${pkgdir}/opt/sbin/k${i} || return 1
done
# Rename clients and their manpages
for i in rcp rsh telnet ftp su login; do
if [ -f ${pkgdir}/usr/share/man/man1/${i}.1 ]; then
mv ${pkgdir}/usr/share/man/man1/${i}.1 ${pkgdir}/usr/share/man/man1/k${i}.1 || return 1
if [ -f ${pkgdir}/opt/share/man/man1/${i}.1 ]; then
mv ${pkgdir}/opt/share/man/man1/${i}.1 ${pkgdir}/opt/share/man/man1/k${i}.1 || return 1
fi
mv ${pkgdir}/usr/bin/${i} ${pkgdir}/usr/bin/k${i} || return 1
mv ${pkgdir}/opt/bin/${i} ${pkgdir}/opt/bin/k${i} || return 1
done
rm -rf ${pkgdir}/usr/share/man/cat{1,3,5,8}
rm -rf ${pkgdir}/opt/share/man/cat{1,3,5,8}
# Arch could be a KDC too
install -d ${pkgdir}/etc/rc.d
install -m644 ${srcdir}/heimdal-${pkgver}/krb5.conf ${pkgdir}/etc/ || return 1
install -d ${pkgdir}/opt/etc/rc.d
install -m644 ${srcdir}/heimdal-${pkgver}/krb5.conf ${pkgdir}/opt/etc/ || return 1
for i in heimdal-kdc kadmind kpasswd; do
install -m755 ${srcdir}/${i}.rc ${pkgdir}/etc/rc.d/${i} || return 1
install -m755 ${srcdir}/${i}.rc ${pkgdir}/opt/etc/rc.d/${i} || return 1
done
# Remove conflicts
rm ${pkgdir}/usr/share/man/man5/ftpusers.5* # man-pages
rm ${pkgdir}/usr/share/info/dir
rm ${pkgdir}/usr/bin/compile_et
rm ${pkgdir}/usr/lib/libcom_err*
rm ${pkgdir}/opt/share/man/man5/ftpusers.5* # man-pages
rm ${pkgdir}/opt/share/info/dir
rm ${pkgdir}/opt/bin/compile_et
rm ${pkgdir}/opt/lib/libcom_err*
# Compress info pages
for page in heimdal hx509; do
gzip -9 ${pkgdir}/usr/share/info/${page}.info
gzip -9 ${pkgdir}/opt/share/info/${page}.info
done
# Install the license
install -d ${pkgdir}/usr/share/licenses/${pkgname}
install -d ${pkgdir}/opt/share/licenses/${pkgname}
install -D -m644 ${srcdir}/${pkgname}-${pkgver}/LICENSE \
${pkgdir}/usr/share/licenses/${pkgname}/ || return 1
${pkgdir}/opt/share/licenses/${pkgname}/ || return 1
}

View file

@ -1,15 +1,15 @@
#!/bin/bash
# general config
. /etc/rc.conf
. /etc/rc.d/functions
. /opt/etc/rc.conf
. /opt/etc/rc.d/functions
PID=`pidof -o %PPID /usr/sbin/kdc`
PID=`pidof -o %PPID /opt/sbin/kdc`
case "$1" in
start)
stat_busy "Starting heimdal kdc"
if [ -z "$PID" ]; then
/usr/sbin/kdc --detach
/opt/sbin/kdc --detach
fi
if [ ! -z "$PID" -o $? -gt 0 ]; then
stat_fail

View file

@ -1,15 +1,15 @@
#!/bin/bash
# general config
. /etc/rc.conf
. /etc/rc.d/functions
. /opt/etc/rc.conf
. /opt/etc/rc.d/functions
PID=`pidof -o %PPID /usr/sbin/kadmind`
PID=`pidof -o %PPID /opt/sbin/kadmind`
case "$1" in
start)
stat_busy "Starting heimdal admin server"
if [ -z "$PID" ]; then
/usr/sbin/kadmind &
/opt/sbin/kadmind &
fi
if [ ! -z "$PID" -o $? -gt 0 ]; then
stat_fail

View file

@ -1,15 +1,15 @@
#!/bin/bash
# general config
. /etc/rc.conf
. /etc/rc.d/functions
. /opt/etc/rc.conf
. /opt/etc/rc.d/functions
PID=`pidof -o %PPID /usr/sbin/kpasswdd`
PID=`pidof -o %PPID /opt/sbin/kpasswdd`
case "$1" in
start)
stat_busy "Starting heimdal kpasswdd"
if [ -z "$PID" ]; then
/usr/sbin/kpasswdd &
/opt/sbin/kpasswdd &
fi
if [ ! -z "$PID" -o $? -gt 0 ]; then
stat_fail

File diff suppressed because it is too large Load diff

View file

@ -1,53 +0,0 @@
# Maintainer: Krzysztof "hiciu" Warzecha <kwarzecha7@gmail.com>
pkgname=initscripts
pkgver=2009.08
pkgrel=8
pkgdesc="System initialization/bootup scripts"
arch=(arm)
url="http://www.archlinux.org"
license=('GPL')
groups=('base' 'small-base')
backup=(etc/inittab etc/rc.conf etc/rc.local etc/rc.local.shutdown)
depends=('glibc' 'bash' 'grep' 'coreutils' 'udev>=139-1' 'sysvinit' 'net-tools')
optdepends=('bridge-utils: Network bridging support'
'dhcpcd: DHCP network configuration'
'wireless_tools: Wireless networking')
#We will change them, so we should keep them in local repo
#Sorry, but they can't be kept in separate directory. Makepkg complains
#about it..
source=('adjtime.cron'
'inittab'
'minilogd.c'
'network'
'rc.local'
'rc.multi'
'rc.single'
'functions'
'install.sh'
'netfs'
'rc.conf'
'rc.local.shutdown'
'rc.shutdown'
'rc.sysinit')
md5sums=('c03a4a5be5e2579b59e0dcd6a21d310b'
'574273c77fff4954c8628418b5c8fc82'
'2c2dcc7ce7586f27fc5e6887f8ec74b8'
'e3637ea43f2dbabba7b1b44f94b0277d'
'bd236a57bc00aa4727b98c5ae401c457'
'37c1abbbe4ee5139c5bd8f0f4f2e69ba'
'048a7f5c7e5b0285001f308c3b6d30f1'
'c98f6e640d0aeba23a4aed511c526d19'
'3fb0b6e945065ba1d283f136d17d612e'
'96fdb70f95844d95a9941ee319601e8d'
'4a44e2c64b6820e67bedd5cd33699ec7'
'669ce6d766dd9deb86686219f3763fe4'
'81e36de17d6ebf6fe9a1026a2d6f6f83'
'04476feac2c4aeff97b6d9fcd239f1e0')
build() {
cd ${startdir}/src/
chmod u+x install.sh
DESTDIR=$startdir/pkg ./install.sh
}

View file

@ -1,17 +0,0 @@
#!/bin/bash
# Update our hwclock for system drift
. /etc/rc.conf
HWCLOCK_PARAMS="--adjust"
if [ "$HARDWARECLOCK" = "UTC" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc"
elif [ "$HARDWARECLOCK" = "localtime" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime"
else
HWCLOCK_PARAMS=""
fi
if [ -n "$HWCLOCK_PARAMS" ]; then
/sbin/hwclock $HWCLOCK_PARAMS
fi

View file

@ -1,241 +0,0 @@
#
# initscripts functions
#
# width:
STAT_COL=80
if [ -t 1 ]; then
# stty will fail when stdin isn't a terminal (but we're in this block, so stdout is)
if [ -t 0 ]; then
STAT_COL="$(/bin/stty size)"
# stty gives "rows cols"; strip the rows number, we just want columns
STAT_COL="${STAT_COL##* }"
else
# tput will fail at boot time if /usr/share/terminfo isn't yet mounted
# or TERM is otherwise unrecognized
STAT_COL="$(/bin/tput cols 2>/dev/null)"
fi
if [ "0$STAT_COL" -eq 0 ]; then
# if output was 0 (serial console), set default width to 80
USECOLOR=""
STAT_COL=80
fi
else
USECOLOR=""
STAT_COL=80
fi
if [ -t 1 ]; then
STAT_COL=$(/bin/stty size)
# strip the rows number, we just want columns
STAT_COL=${STAT_COL##* }
if [ "$STAT_COL" = "0" ]; then
# if output was 0 (serial console), set default width to 80
STAT_COL=80
fi
fi
# we use 13 characters for our own stuff
STAT_COL=$(($STAT_COL - 13))
# disable colors on broken terminals
TERM_COLORS="$(/bin/tput colors 2>/dev/null)"
if [ $? = 3 ]; then
TERM_COLORS=8
elif [ -n "${TERM_COLORS}" ]; then
case "${TERM_COLORS}" in
*[!0-9]*)
USECOLOR=""
;;
*)
[ "${TERM_COLORS}" -lt 8 ] && USECOLOR=""
;;
esac
else
USECOLOR=""
fi
unset TERM_COLORS
# clear the TZ envvar, so daemons always respect /etc/localtime
unset TZ
# colors:
if [ "$USECOLOR" = "YES" -o "$USECOLOR" = "yes" ]; then
C_MAIN="\033[1;37;40m" # main text
C_OTHER="\033[1;34;40m" # prefix & brackets
C_SEPARATOR="\033[1;30;40m" # separator
C_BUSY="\033[0;36;40m" # busy
C_FAIL="\033[1;31;40m" # failed
C_DONE="\033[1;37;40m" # completed
C_BKGD="\033[1;35;40m" # backgrounded
C_H1="\033[1;37;40m" # highlight text 1
C_H2="\033[1;36;40m" # highlight text 2
C_CLEAR="\033[1;0m"
fi
if [ -t 1 ]; then
SAVE_POSITION="\033[s"
RESTORE_POSITION="\033[u"
DEL_TEXT="\033[$(($STAT_COL+4))G"
else
SAVE_POSITION=""
RESTORE_POSITION=""
DEL_TEXT=""
fi
# prefixes:
PREFIX_REG="::"
PREFIX_HL=" >"
# functions:
deltext() {
printf "${DEL_TEXT}"
}
printhl() {
printf "${C_OTHER}${PREFIX_HL} ${C_H1}${1}${C_CLEAR} \n"
}
printsep() {
printf "\n${C_SEPARATOR} ------------------------------\n"
}
stat_bkgd() {
printf "${C_OTHER}${PREFIX_REG} ${C_MAIN}${1}${C_CLEAR} "
deltext
printf " ${C_OTHER}[${C_BKGD}BKGD${C_OTHER}]${C_CLEAR} "
}
stat_busy() {
printf "${C_OTHER}${PREFIX_REG} ${C_MAIN}${1}${C_CLEAR} "
printf "${SAVE_POSITION}"
deltext
printf " ${C_OTHER}[${C_BUSY}BUSY${C_OTHER}]${C_CLEAR} "
}
stat_append() {
printf "${RESTORE_POSITION}"
printf -- "${C_MAIN}${1}${C_CLEAR}"
printf "${SAVE_POSITION}"
}
stat_done() {
deltext
printf " ${C_OTHER}[${C_DONE}DONE${C_OTHER}]${C_CLEAR} \n"
}
stat_fail() {
deltext
printf " ${C_OTHER}[${C_FAIL}FAIL${C_OTHER}]${C_CLEAR} \n"
}
stat_die() {
retval=1
[ "$1" = "" ] || retval=$1
stat_fail
exit $retval
}
status() {
stat_busy "$1"
shift
$* >/dev/null 2>&1
if [ $? -eq 0 ]; then
stat_done
return 0
else
stat_fail
return 1
fi
}
# usage : in_array( $needle, $haystack )
# return : 0 - found
# 1 - not found
# Copied from makepkg
in_array() {
local needle=$1; shift
[ -z "$1" ] && return 1 # Not Found
local item
for item in "$@"; do
local c="${item:0:1}"
if [ "x$c" = "x@" ]; then
item="${item:1}"
fi
[ "$item" = "$needle" ] && return 0 # Found
done
return 1 # Not Found
}
# daemons:
add_daemon() {
[ -d /var/run/daemons ] || /bin/mkdir -p /var/run/daemons
/bin/touch /var/run/daemons/$1
}
rm_daemon() {
/bin/rm -f /var/run/daemons/$1
}
ck_daemon() {
[ -f /var/run/daemons/$1 ] && return 1
return 0
}
ck_depends() {
for daemon in $@; do
if ck_daemon $daemon; then
/etc/rc.d/$daemon start
fi
done
}
start_daemon() {
/etc/rc.d/$1 start
}
start_daemon_bkgd() {
stat_bkgd "Starting $1"
(/etc/rc.d/$1 start) &>/dev/null &
}
stop_daemon() {
/etc/rc.d/$1 stop
}
# Status functions
status_started() {
deltext
echo -ne "$C_OTHER[${C_STRT}STARTED$C_OTHER]$C_CLEAR "
}
status_stopped() {
deltext
echo -ne "$C_OTHER[${C_STRT}STOPPED$C_OTHER]$C_CLEAR "
}
ck_status() {
ck_daemon $1
if [ $? -eq 1 ]; then
status_started
else
status_stopped
fi
}
#Source additional functions at the end to allow overrides
for f in /etc/rc.d/functions.d/*; do
if [ -e $f ]; then
. $f
fi
done
# End of file
# vim: set ft=sh sw=2 ts=2 et:

View file

@ -1,7 +0,0 @@
post_upgrade() {
if [ "$(vercmp $2 2009.07)" -lt 0 ]; then
echo "==> Adjusting /etc/inittab for transition to /dev/tty standard."
echo "==> Original file saved as /etc/inittab.pacsave"
sed -i'.pacsave' 's#vc/\([0-9]\)#tty\1#' /etc/inittab
fi
}

View file

@ -1,42 +0,0 @@
#
# /etc/inittab
#
# Runlevels:
# 0 Halt
# 1(S) Single-user
# 2 Not used
# 3 Multi-user
# 4 Not used
# 5 X11
# 6 Reboot
## Only one of the following two lines can be uncommented!
# Boot to console
id:3:initdefault:
# Boot to X11
#id:5:initdefault:
rc::sysinit:/etc/rc.sysinit
rs:S1:wait:/etc/rc.single
rm:2345:wait:/etc/rc.multi
rh:06:wait:/etc/rc.shutdown
su:S:wait:/sbin/sulogin -p
# -8 options fixes umlauts problem on login
c1:2345:respawn:/sbin/agetty -8 38400 tty1 linux
c2:2345:respawn:/sbin/agetty -8 38400 tty2 linux
c3:2345:respawn:/sbin/agetty -8 38400 tty3 linux
c4:2345:respawn:/sbin/agetty -8 38400 tty4 linux
c5:2345:respawn:/sbin/agetty -8 38400 tty5 linux
c6:2345:respawn:/sbin/agetty -8 38400 tty6 linux
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
# Example lines for starting a login manager
x:5:respawn:/usr/bin/xdm -nodaemon
#x:5:respawn:/usr/sbin/gdm -nodaemon
#x:5:respawn:/usr/bin/kdm -nodaemon
#x:5:respawn:/usr/bin/slim >& /dev/null
# End of file

View file

@ -1,23 +0,0 @@
#!/bin/sh
install -d -m755 ${DESTDIR}/etc/rc.d || exit 1
install -d -m755 ${DESTDIR}/etc/conf.d || exit 1
install -d -m755 ${DESTDIR}/etc/rc.d/functions.d/ || exit 1
install -d -m755 ${DESTDIR}/etc/cron.hourly/ || exit 1
for i in inittab rc.conf; do
install -D -m644 $i ${DESTDIR}/etc/$i || exit 1
done
for i in rc.local rc.local.shutdown rc.multi rc.shutdown rc.single rc.sysinit; do
install -D -m755 $i ${DESTDIR}/etc/$i || exit 1
done
install -D -m755 adjtime.cron ${DESTDIR}/etc/cron.hourly/adjtime
install -D -m644 functions ${DESTDIR}/etc/rc.d/functions || exit 1
for i in network netfs; do
install -D -m755 $i ${DESTDIR}/etc/rc.d/$i || exit 1
done
gcc $CFLAGS -o minilogd minilogd.c || exit 1
install -D -m755 minilogd ${DESTDIR}/sbin/minilogd || exit 1

View file

@ -1,202 +0,0 @@
/* minilogd.c
*
* A pale imitation of syslogd. Most notably, doesn't write anything
* anywhere except possibly back to syslogd.
*
*/
#include <errno.h>
#include <fcntl.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <strings.h>
#include <stdarg.h>
#include <syslog.h>
#ifndef __USE_BSD
# define __USE_BSD
#endif
#include <unistd.h>
#include <sys/poll.h>
#include <sys/socket.h>
#include <sys/stat.h>
#include <sys/un.h>
#define MAX_BUF_LINES 10000
#define BUF_LINE_SIZE 8192
static int we_own_log=0;
static char **buffer=NULL;
static int buflines=0;
int debug;
int recvsock;
void alarm_handler(int x) {
alarm(0);
close(recvsock);
recvsock = -1;
}
void freeBuffer() {
struct sockaddr_un addr;
int sock;
int x=0,conn;
memset(&addr, 0, sizeof(addr));
addr.sun_family = AF_LOCAL;
strncpy(addr.sun_path,_PATH_LOG,sizeof(addr.sun_path)-1);
/* wait for klogd to hit syslog */
sleep(2);
sock = socket(AF_LOCAL, SOCK_STREAM,0);
conn=connect(sock,(struct sockaddr *) &addr,(socklen_t)sizeof(addr));
while (x<buflines) {
if (!conn) {
/*printf("to syslog: %s\n", buffer[x]);*/
write(sock,buffer[x],strlen(buffer[x])+1);
}
free(buffer[x]);
x++;
}
free(buffer);
}
void cleanup(int exitcode) {
/* If we own the log, unlink it before trying to free our buffer.
* Otherwise, sending the buffer to /dev/log doesn't make much sense.... */
if (we_own_log) {
perror("wol");
unlink(_PATH_LOG);
}
/* Don't try to free buffer if we were called from a signal handler */
if (exitcode<=0) {
if (buffer)
freeBuffer();
exit(exitcode);
} else
exit(exitcode+128);
}
void runDaemon(int sock) {
struct sockaddr_un addr;
int x,done=0;
ssize_t len;
socklen_t addrlen = (socklen_t)sizeof(struct sockaddr_un);
char *message = NULL;
struct stat s1,s2;
struct pollfd pfds;
daemon(0,-1);
/* try not to leave stale sockets lying around */
/* Hopefully, we won't actually get any of these */
signal(SIGHUP,cleanup);
signal(SIGINT,cleanup);
signal(SIGQUIT,cleanup);
signal(SIGILL,cleanup);
signal(SIGABRT,cleanup);
signal(SIGFPE,cleanup);
signal(SIGSEGV,cleanup);
signal(SIGPIPE,cleanup);
signal(SIGBUS,cleanup);
signal(SIGTERM,cleanup);
done = 0;
/* Get stat info on /dev/log so we can later check to make sure we
* still own it... */
if (stat(_PATH_LOG,&s1) != 0)
memset(&s1, 0, sizeof(struct stat));
while (!done) {
pfds.fd = sock;
pfds.events = POLLIN|POLLPRI;
pfds.revents = 0;
if ( ( (x=poll(&pfds,1,500))==-1) && errno !=EINTR) {
perror("poll");
cleanup(-1);
}
if ( (x>0) && (pfds.revents & (POLLIN | POLLPRI))) {
if (message == NULL) {
message = calloc(BUF_LINE_SIZE,sizeof(char));
}
recvsock = accept(sock,(struct sockaddr *) &addr, &addrlen);
alarm(2);
signal(SIGALRM, alarm_handler);
len = read(recvsock,message,BUF_LINE_SIZE);
alarm(0);
close(recvsock);
if (len>0) {
/*printf("line recv'd: %s\n", message);*/
if (buflines < MAX_BUF_LINES) {
if (buffer)
buffer = realloc(buffer,(buflines+1)*sizeof(char *));
else
buffer = malloc(sizeof(char *));
message[strlen(message)]='\n';
buffer[buflines]=message;
message = NULL;
buflines++;
}
}
else {
recvsock=-1;
}
}
if ( (x>0) && ( pfds.revents & (POLLHUP | POLLNVAL)) )
done = 1;
/* Check to see if syslogd's yanked our socket out from under us */
if ( (stat(_PATH_LOG,&s2)!=0) ||
(s1.st_ino != s2.st_ino ) || (s1.st_ctime != s2.st_ctime) ||
(s1.st_mtime != s2.st_mtime) ) { /*|| (s1.st_atime != s2.st_atime) ) {*/
done = 1;
we_own_log = 0;
/*printf("someone stole our %s\n", _PATH_LOG);
printf("st_ino: %d %d\n", s1.st_ino, s2.st_ino);
printf("st_ctime: %d %d\n", s1.st_ctime, s2.st_ctime);
printf("st_atime: %d %d\n", s1.st_atime, s2.st_atime);
printf("st_mtime: %d %d\n", s1.st_mtime, s2.st_mtime);*/
}
}
free(message);
cleanup(0);
}
int main(int argc, char **argv) {
struct sockaddr_un addr;
int sock;
int pid;
/* option processing made simple... */
if (argc>1) debug=1;
/* just in case */
sock = open("/dev/null",O_RDWR);
dup2(sock,0);
dup2(sock,1);
dup2(sock,2);
memset(&addr, 0, sizeof(addr));
addr.sun_family = AF_LOCAL;
strncpy(addr.sun_path,_PATH_LOG,sizeof(addr.sun_path)-1);
sock = socket(AF_LOCAL, SOCK_STREAM,0);
unlink(_PATH_LOG);
/* Bind socket before forking, so we know if the server started */
if (!bind(sock,(struct sockaddr *) &addr, (socklen_t)sizeof(addr))) {
we_own_log = 1;
listen(sock,5);
if ((pid=fork())==-1) {
perror("fork");
exit(3);
}
if (pid) {
exit(0);
} else {
/*printf("starting daemon...\n");*/
runDaemon(sock);
/* shouldn't get back here... */
exit(4);
}
} else {
exit(5);
}
}
/* vim: set ts=2 noet: */

View file

@ -1,45 +0,0 @@
#!/bin/bash
# sourcing our current rc.conf requires this to be a bash script
. /etc/rc.conf
. /etc/rc.d/functions
rc=0
case "$1" in
start)
stat_busy "Mounting Network Filesystems"
/bin/mount -a -t nfs,nfs4,smbfs,codafs,ncpfs,cifs,shfs,glusterfs,fuse,fuseblk,fuse.glusterfs
rc=$?
/bin/mount -a -O _netdev
rc=$(($rc+$?))
if [ $rc -gt 0 ]; then
stat_fail
else
add_daemon netfs
stat_done
fi
;;
stop)
stat_busy "Unmounting Network Filesystems"
/bin/umount -a -O _netdev
rc=$?
/bin/umount -a -t nfs,nfs4,smbfs,codafs,ncpfs,cifs,shfs,glusterfs,fuse,fuseblk,fuse.glusterfs
rc=$(($rc+$?))
if [ $rc -gt 0 ]; then
stat_fail
else
rm_daemon netfs
stat_done
fi
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "usage: $0 {start|stop|restart}"
esac
# vim: set ts=2 noet:

View file

@ -1,263 +0,0 @@
#!/bin/bash
. /etc/rc.conf
. /etc/rc.d/functions
# wireless settings
[ -f /etc/conf.d/wireless ] && . /etc/conf.d/wireless
# ethernet bonding settings
[ -f /etc/conf.d/bonding ] && . /etc/conf.d/bonding
# bridge settings
[ -f /etc/conf.d/bridges ] && . /etc/conf.d/bridges
# dhcpcd settings
[ -f /etc/conf.d/dhcpcd ] && . /etc/conf.d/dhcpcd
ifup()
{
if [ "$1" = "" ]; then
echo "usage: $0 ifup <interface_name>"
return 1
fi
/sbin/ifconfig $1 up
wi_up $1 || return 1
eval ifcfg="\$${1}"
if [ "$ifcfg" = "dhcp" ]; then
# remove the .pid file if it exists
/bin/rm -f /var/run/dhcpcd-${1}.pid >/dev/null 2>&1
/bin/rm -f /var/run/dhcpcd-${1}.cache >/dev/null 2>&1
/sbin/dhcpcd $DHCPCD_ARGS ${1}
else
/sbin/ifconfig $ifcfg
fi
return $?
}
wi_up()
{
eval iwcfg="\$wlan_${1}"
[ "$iwcfg" = "" ] && return 0
/usr/sbin/iwconfig $iwcfg
[[ -z "$WIRELESS_TIMEOUT" ]] && WIRELESS_TIMEOUT=2
sleep $WIRELESS_TIMEOUT
bssid=`iwgetid $1 -ra`
if [[ "$bssid" = "00:00:00:00:00:00" ]]; then
printhl "Could not associate $1 - try increasing WIRELESS_TIMEOUT and check network is WEP or has no security"
return 1
fi
return 0
}
ifdown()
{
if [ "$1" = "" ]; then
echo "usage: $0 ifdown <interface_name>"
return 1
fi
eval ifcfg="\$${1}"
if [ "$ifcfg" = "dhcp" ]; then
if [ -f /var/run/dhcpcd-${1}.pid ]; then
/bin/kill $(cat /var/run/dhcpcd-${1}.pid)
fi
fi
# Always bring the interface itself down
/sbin/ifconfig ${1} down >/dev/null 2>&1
return $?
}
iflist()
{
for ifline in ${INTERFACES[@]}; do
if [ "$ifline" = "${ifline#!}" ]; then
printf " $ifline:\t"
else
printf "$ifline:\t"
fi
eval real_ifline=\$${ifline#!}
echo $real_ifline
done
}
rtup()
{
if [ "$1" = "" ]; then
echo "usage: $0 rtup <route_name>"
return 1
fi
eval routecfg="\$${1}"
if grep -q :: <<< $routecfg; then
/sbin/route -A inet6 add $routecfg
else
/sbin/route add $routecfg
fi
return $?
}
rtdown()
{
if [ "$1" = "" ]; then
echo "usage: $0 rtdown <route_name>"
return 1
fi
eval routecfg="\$${1}"
if grep -q :: <<< $routecfg; then
/sbin/route -A inet6 del $routecfg
else
/sbin/route del $routecfg
fi
return $?
}
rtlist()
{
for rtline in ${ROUTES[@]}; do
if [ "$rtline" = "${rtline#!}" ]; then
printf " $rtline:\t"
else
printf "$rtline:\t"
fi
eval real_rtline=\$${rtline#!}
echo $real_rtline
done
}
bond_up()
{
for ifline in ${BOND_INTERFACES[@]}; do
if [ "$ifline" = "${ifline#!}" ]; then
eval bondcfg="\$bond_${ifline}"
if [ -n "${bondcfg}" ]; then
/sbin/ifenslave $ifline $bondcfg || error=1
fi
fi
done
}
bond_down()
{
for ifline in ${BOND_INTERFACES[@]}; do
if [ "$ifline" = "${ifline#!}" ]; then
eval bondcfg="\$bond_${ifline}"
/sbin/ifenslave -d $ifline $bondcfg || error=1
fi
done
}
bridge_up()
{
for br in ${BRIDGE_INTERFACES[@]}; do
if [ "$br" = "${br#!}" ]; then
# if the bridge already exists, remove it
if [ "$(/sbin/ifconfig $br 2>/dev/null)" ]; then
/sbin/ifconfig $br down
/usr/sbin/brctl delbr $br
fi
/usr/sbin/brctl addbr $br
eval brifs="\$bridge_${br}"
for brif in $brifs; do
if [ "$brif" = "${brif#!}" ]; then
for ifline in ${BOND_INTERFACES[@]}; do
if [ "$brif" = "$ifline" ] && [ "$ifline" = "${ifline#!}" ]; then
ifup $ifline
eval bondcfg="\$bond_${ifline}"
/sbin/ifenslave $ifline $bondcfg || error=1
unset bond_${ifline}
fi
done
/usr/sbin/brctl addif $br $brif || error=1
fi
done
fi
done
}
bridge_down()
{
for br in ${BRIDGE_INTERFACES[@]}; do
if [ "$br" = "${br#!}" ]; then
/usr/sbin/brctl delbr $br
fi
done
}
case "$1" in
start)
if ! ck_daemon network; then
echo "Network is already running. Try 'network restart'"
exit
fi
stat_busy "Starting Network"
error=0
# bring up bridge interfaces
bridge_up
# bring up ethernet interfaces
for ifline in ${INTERFACES[@]}; do
if [ "$ifline" = "${ifline#!}" ]; then
ifup $ifline || error=1
fi
done
# bring up bond interfaces
bond_up
# bring up routes
for rtline in "${ROUTES[@]}"; do
if [ "$rtline" = "${rtline#!}" ]; then
rtup $rtline || error=1
fi
done
if [ $error -eq 0 ]; then
add_daemon network
stat_done
else
stat_fail
fi
;;
stop)
#if ck_daemon network; then
# echo "Network is not running. Try 'network start'"
# exit
#fi
stat_busy "Stopping Network"
rm_daemon network
error=0
for rtline in "${ROUTES[@]}"; do
if [ "$rtline" = "${rtline#!}" ]; then
rtdown $rtline || error=1
fi
done
# bring down bond interfaces
bond_down
for ifline in ${INTERFACES[@]}; do
if [ "$ifline" = "${ifline#!}" ]; then
ifdown $ifline || error=1
fi
done
# bring down bridge interfaces
bridge_down
if [ $error -eq 0 ]; then
stat_done
else
stat_fail
fi
;;
restart)
$0 stop
/bin/sleep 2
$0 start
;;
ifup|ifdown|iflist|rtup|rtdown|rtlist)
$1 $2
;;
*)
echo "usage: $0 {start|stop|restart}"
echo " $0 {ifup|ifdown|iflist|rtup|rtdown|rtlist}"
esac
# vim: set ts=2 noet:

View file

@ -1,90 +0,0 @@
#
# /etc/rc.conf - Main Configuration for Arch Linux
#
# -----------------------------------------------------------------------
# LOCALIZATION
# -----------------------------------------------------------------------
#
# LOCALE: available languages can be listed with the 'locale -a' command
# HARDWARECLOCK: set to "UTC" or "localtime", any other value will result
# in the hardware clock being left untouched (useful for virtualization)
# TIMEZONE: timezones are found in /usr/share/zoneinfo
# KEYMAP: keymaps are found in /usr/share/kbd/keymaps
# CONSOLEFONT: found in /usr/share/kbd/consolefonts (only needed for non-US)
# CONSOLEMAP: found in /usr/share/kbd/consoletrans
# USECOLOR: use ANSI color sequences in startup messages
#
LOCALE="en_US.UTF-8"
HARDWARECLOCK="localtime"
TIMEZONE="Canada/Pacific"
KEYMAP="us"
CONSOLEFONT=
CONSOLEMAP=
USECOLOR="yes"
# -----------------------------------------------------------------------
# HARDWARE
# -----------------------------------------------------------------------
#
# MOD_AUTOLOAD: Allow autoloading of modules at boot and when needed
# MOD_BLACKLIST: Prevent udev from loading these modules
# MODULES: Modules to load at boot-up. Prefix with a ! to blacklist.
#
# NOTE: Use of 'MOD_BLACKLIST' is deprecated. Please use ! in the MODULES array.
#
MOD_AUTOLOAD="yes"
#MOD_BLACKLIST=() #deprecated
MODULES=()
# Scan for LVM volume groups at startup, required if you use LVM
USELVM="no"
# -----------------------------------------------------------------------
# NETWORKING
# -----------------------------------------------------------------------
#
# HOSTNAME: Hostname of machine. Should also be put in /etc/hosts
#
HOSTNAME="myhost"
# Use 'ifconfig -a' or 'ls /sys/class/net/' to see all available interfaces.
#
# Interfaces to start at boot-up (in this order)
# Declare each interface then list in INTERFACES
# - prefix an entry in INTERFACES with a ! to disable it
# - no hyphens in your interface names - Bash doesn't like it
#
# DHCP: Set your interface to "dhcp" (eth0="dhcp")
# Wireless: See network profiles below
#
usb0="usb0 192.168.0.202 up"
INTERFACES=(usb0)
# Routes to start at boot-up (in this order)
# Declare each route then list in ROUTES
# - prefix an entry in ROUTES with a ! to disable it
#
gateway="default gw 192.168.0.200"
ROUTES=(gateway)
# Enable these network profiles at boot-up. These are only useful
# if you happen to need multiple network configurations (ie, laptop users)
# - set to 'menu' to present a menu during boot-up (dialog package required)
# - prefix an entry with a ! to disable it
#
# Network profiles are found in /etc/network.d
#
# This now requires the netcfg package
#
#NETWORKS=(main)
# -----------------------------------------------------------------------
# DAEMONS
# -----------------------------------------------------------------------
#
# Daemons to start at boot-up (in this order)
# - prefix a daemon with a ! to disable it
# - prefix a daemon with a @ to start it up in the background
#
DAEMONS=(network sshd)

View file

@ -1,6 +0,0 @@
#!/bin/bash
#
# /etc/rc.local: Local multi-user startup script.
#

View file

@ -1,5 +0,0 @@
#!/bin/bash
#
# /etc/rc.local.shutdown: Local shutdown script.
#

View file

@ -1,27 +0,0 @@
#!/bin/bash
#
# /etc/rc.multi
#
. /etc/rc.conf
. /etc/rc.d/functions
# Load sysctl variables if sysctl.conf is present
[ -r /etc/sysctl.conf ] && /sbin/sysctl -q -p &>/dev/null
# Start daemons
for daemon in "${DAEMONS[@]}"; do
if [ "$daemon" = "${daemon#!}" ]; then
if [ "$daemon" = "${daemon#@}" ]; then
start_daemon $daemon
else
start_daemon_bkgd ${daemon:1}
fi
fi
done
if [ -x /etc/rc.local ]; then
/etc/rc.local
fi
# vim: set ts=2 noet:

View file

@ -1,149 +0,0 @@
#!/bin/bash
#
# /etc/rc.shutdown
#
. /etc/rc.conf
. /etc/rc.d/functions
# avoid staircase effect
/bin/stty onlcr
echo " "
printhl "Initiating Shutdown..."
echo " "
# avoid NIS hanging syslog-ng on shutdown by unsetting the domainname
if [ -x /bin/domainname ]; then
/bin/domainname ""
fi
if [ -x /etc/rc.local.shutdown ]; then
/etc/rc.local.shutdown
fi
if [ "$PREVLEVEL" = "3" -o "$PREVLEVEL" = "5" ]; then
# Find daemons NOT in the DAEMONS array. Shut these down first
if [ -d /var/run/daemons ]; then
for daemon in $(/bin/ls -1t /var/run/daemons); do
if ! in_array $daemon ${DAEMONS[@]}; then
stop_daemon $daemon
fi
done
fi
# Shutdown daemons in reverse order
let i=${#DAEMONS[@]}-1
while [ $i -ge 0 ]; do
if [ "${DAEMONS[$i]:0:1}" != '!' ]; then
ck_daemon ${DAEMONS[$i]#@} || stop_daemon ${DAEMONS[$i]#@}
fi
let i=i-1
done
fi
# Terminate all processes
stat_busy "Sending SIGTERM To Processes"
/sbin/killall5 -15 &> /dev/null
/bin/sleep 5
stat_done
stat_busy "Sending SIGKILL To Processes"
/sbin/killall5 -9 &> /dev/null
/bin/sleep 1
stat_done
stat_busy "Saving Random Seed"
RANDOM_SEED=/var/lib/misc/random-seed
[ -d $(dirname $RANDOM_SEED) ] || mkdir -p $(dirname $RANDOM_SEED)
: > $RANDOM_SEED
/bin/chmod 0600 $RANDOM_SEED
POOL_FILE=/proc/sys/kernel/random/poolsize
if [ -r $POOL_FILE ]; then
POOL_SIZE=$(/bin/cat $POOL_FILE)
else
POOL_SIZE=512
fi
/bin/dd if=/dev/urandom of=$RANDOM_SEED count=1 bs=$POOL_SIZE &> /dev/null
stat_done
stat_busy "Saving System Clock"
if [ "$TIMEZONE" != "" -a -e "/usr/share/zoneinfo/$TIMEZONE" ]; then
/bin/rm -f /etc/localtime
/bin/cp "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
fi
HWCLOCK_PARAMS="--systohc"
if [ "$HARDWARECLOCK" = "UTC" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc"
elif [ "$HARDWARECLOCK" = "localtime" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime"
else
HWCLOCK_PARAMS=""
fi
if [ -n "$HWCLOCK_PARAMS" ]; then
/sbin/hwclock $HWCLOCK_PARAMS
fi
stat_done
# removing psmouse module to fix some reboot issues on newer laptops
/sbin/modprobe -r psmouse >/dev/null 2>&1
# Write to wtmp file before unmounting
/sbin/halt -w
stat_busy "Deactivating Swap"
/sbin/swapoff -a
stat_done
stat_busy "Unmounting Filesystems"
/bin/umount -a -r -t noramfs,notmpfs,nosysfs,noproc -O no_netdev
stat_done
# Kill non-root encrypted partition mappings
if [ -f /etc/crypttab -a -n "$(/bin/grep -v ^# /etc/crypttab | /bin/grep -v ^$)" ]; then
stat_busy "Deactivating encrypted volumes:"
CS=/sbin/cryptsetup.static
do_uncrypt() {
if [ $# -ge 3 ]; then
stat_append "${1}.."
$CS remove $1 >/dev/null 2>&1
if [ $? -ne 0 ]; then
stat_append "failed "
else
stat_append "ok "
fi
fi
}
while read line; do
eval do_uncrypt "$line"
done </etc/crypttab
stat_done
fi
if [ "$USELVM" = "yes" -o "$USELVM" = "YES" ]; then
if [ -x /sbin/lvm -a -d /sys/block ]; then
stat_busy "Deactivating LVM2 groups"
/sbin/lvm vgchange --ignorelockingfailure -an >/dev/null 2>&1
stat_done
fi
fi
stat_busy "Remounting Root Filesystem Read-only"
/bin/mount -n -o remount,ro /
stat_done
# Power off or reboot
if [ "$RUNLEVEL" = "0" ]; then
printsep
printhl "${C_H2}POWER OFF"
/sbin/poweroff -d -f -h -i
else
printsep
printhl "${C_H2}REBOOTING"
# if kexec is installed and a kernel is loaded, use it
[ -x /sbin/kexec ] && /sbin/kexec -e > /dev/null 2>&1
/sbin/reboot -d -f -i
fi
# End of file
# vim: set ts=2 sw=2 noet:

View file

@ -1,70 +0,0 @@
#!/bin/bash
#
# /etc/rc.single: Single-user startup script.
#
. /etc/rc.conf
. /etc/rc.d/functions
if [ "$PREVLEVEL" = "3" -o "$PREVLEVEL" = "5" ]; then
# Find daemons NOT in the DAEMONS array. Shut these down first
if [ -d /var/run/daemons ]; then
for daemon in $(/bin/ls -1t /var/run/daemons); do
if ! in_array $daemon ${DAEMONS[@]}; then
stop_daemon $daemon
fi
done
fi
# Shutdown daemons in reverse order
let i=${#DAEMONS[@]}-1
while [ $i -ge 0 ]; do
if [ "${DAEMONS[$i]:0:1}" != '!' ]; then
ck_daemon ${DAEMONS[$i]#@} || stop_daemon ${DAEMONS[$i]#@}
fi
let i=i-1
done
fi
if [ "$PREVLEVEL" != "N" ]; then
stat_busy "Sending SIGTERM To Processes"
/sbin/killall5 -15 &> /dev/null
/bin/sleep 5
stat_done
stat_busy "Sending SIGKILL To Processes"
/sbin/killall5 -9
/bin/sleep 1
stat_done
if [ -x /sbin/udevadm ]; then
stat_busy "Starting UDev Daemon"
/sbin/udevd --daemon
stat_done
stat_busy "Loading UDev uevents"
/sbin/udevadm trigger
/sbin/udevadm settle
stat_done
else
# Static /dev, our last resort
status "Using static /dev filesystem" /bin/true
fi
# try syslog-NG first, then fall back to good ol' syslogd
if [ -x /etc/rc.d/syslog-ng ]; then
/etc/rc.d/syslog-ng start
elif [ -x /etc/rc.d/syslogd ]; then
/etc/rc.d/syslogd start
[ -x /etc/rc.d/klogd ] && /etc/rc.d/klogd start
fi
fi
if [ "$RUNLEVEL" = "1" ]; then
printsep
printhl "Entering single-user mode..."
# make sure /dev/initctl is in place
/bin/kill -HUP 1
exec /sbin/init -t1 S
fi
# End of file
# vim: set ts=2 noet:

View file

@ -1,424 +0,0 @@
#!/bin/bash
#
# /etc/rc.sysinit
#
. /etc/rc.conf
. /etc/rc.d/functions
echo " "
printhl "Arch Linux\n"
printhl "${C_H2}http://www.archlinux.org"
printhl "Copyright 2002-2007 Judd Vinet"
printhl "Copyright 2007-2009 Aaron Griffin"
printhl "Distributed under the GNU General Public License (GPL)"
printsep
# mount /proc, /sys and our RAM /dev
/bin/mount -n -t tmpfs none /dev -o mode=0755
/bin/mount -n -t proc none /proc
/bin/mount -n -t sysfs none /sys
# Copy static device nodes to /dev
/bin/cp -a /lib/udev/devices/* /dev/
# start up our mini logger until syslog takes over
/sbin/minilogd
# anything more serious than KERN_WARNING goes to the console
# 'verbose' cmdline parameter enables more messages
if /bin/grep -q " verbose" /proc/cmdline; then
/bin/dmesg -n 8
else
/bin/dmesg -n 3
fi
# enable rtc access
/sbin/modprobe rtc-cmos >/dev/null 2>&1
RTC_MAJOR=$(/bin/grep -w rtc /proc/devices 2>/dev/null)
RTC_MAJOR="${RTC_MAJOR%% *}"
if [ -n "$RTC_MAJOR" ]; then
/bin/mknod /dev/rtc0 c $RTC_MAJOR 0
/bin/ln -s /dev/rtc0 /dev/rtc
fi
HWCLOCK_PARAMS="--hctosys"
if [ "$HARDWARECLOCK" = "UTC" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc"
elif [ "$HARDWARECLOCK" = "localtime" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime"
else
HWCLOCK_PARAMS=""
fi
# Set clock early to fix some bugs with filesystem checks
# Clock is set again later to match rc.conf
if [ -n "$HWCLOCK_PARAMS" -a -f /etc/localtime ]; then
/sbin/hwclock $HWCLOCK_PARAMS --noadjfile
fi
echo > /proc/sys/kernel/hotplug
if [ -x /sbin/udevadm ]; then
stat_busy "Starting UDev Daemon"
/sbin/udevd --daemon
stat_done
else
# Static /dev, our last resort
status "Using static /dev filesystem" true
fi
# Trigger udev uevents
if /bin/pidof -o %PPID /sbin/udevd >/dev/null; then
stat_busy "Triggering UDev uevents"
/sbin/udevadm trigger
stat_done
fi
# Load modules from the MODULES array defined in rc.conf
if ! [ "$load_modules" = "off" ]; then
if [ -f /proc/modules ]; then
stat_busy "Loading Modules"
for mod in "${MODULES[@]}"; do
if [ "$mod" = "${mod#!}" ]; then
/sbin/modprobe $mod
fi
done
stat_done
fi
if [ -d /proc/acpi ]; then
stat_busy "Loading standard ACPI modules"
ACPI_MODULES="ac battery button fan processor thermal"
k="$(echo $BLACKLIST ${MOD_BLACKLIST[@]} | /bin/sed 's|-|_|g')"
j="$(echo ${MODULES[@]} | /bin/sed 's|-|_|g')"
#add disabled MODULES (!) to blacklist - much requested feature
for m in ${j}; do
[ "$m" != "${m#!}" ] && k="${k} ${m#!}"
done
# add disablemodules= from commandline to blacklist
k="${k} $(echo ${disablemodules} | /bin/sed 's|-|_|g' | /bin/sed 's|,| |g')"
for n in ${ACPI_MODULES}; do
if ! echo ${k} | /bin/grep "\<$n\>" 2>&1 >/dev/null; then
/sbin/modprobe $n > /dev/null 2>&1
fi
done
stat_done
fi
fi
# Wait for udev uevents
if /bin/pidof -o %PPID /sbin/udevd >/dev/null; then
stat_busy "Waiting for UDev uevents to be processed"
udevstart="$(/bin/date +%s%0N)"
/sbin/udevadm settle
stat_done
udevend="$(/bin/date +%s%0N)"
printhl " UDev uevent processing time: $((($udevend-$udevstart)/1000000))ms"
fi
# bring up the loopback interface
if [ -d /sys/class/net/lo ]; then
stat_busy "Bringing up loopback interface"
/sbin/ifconfig lo 127.0.0.1 up
if [ $? -ne 0 ]; then
stat_fail
else
stat_done
fi
fi
# If necessary, find md devices and manually assemble RAID arrays
if [ -f /etc/mdadm.conf -a "$(/bin/grep ^ARRAY /etc/mdadm.conf 2>/dev/null)" ]; then
# udev won't create these md nodes, so we do it ourselves
for dev in $(/bin/grep ^ARRAY /etc/mdadm.conf | /bin/awk '{print $2}'); do
path=$(echo $dev | /bin/sed 's|/[^/]*$||')
node=$(echo $dev | /bin/sed "s|^$path/||")
minor=$(echo $node | /bin/sed 's|^[^0-9]*||')
[ ! -e $path/$node ] && /bin/mknod $path/$node b 9 $minor
done
status "Activating RAID arrays" /sbin/mdadm --assemble --scan
fi
if [ "$USELVM" = "yes" -o "$USELVM" = "YES" ]; then
if [ -x /sbin/lvm -a -d /sys/block ]; then
# Kernel 2.6.x, LVM2 groups
/sbin/modprobe -q dm-mod 2>/dev/null
stat_busy "Activating LVM2 groups"
/sbin/lvm vgscan --ignorelockingfailure --mknodes >/dev/null
/sbin/lvm vgchange --ignorelockingfailure -a y >/dev/null
if [ $? -ne 0 ]; then
stat_fail
else
stat_done
fi
fi
fi
# Set up non-root encrypted partition mappings
if [ -f /etc/crypttab -a -n "$(/bin/grep -v ^# /etc/crypttab | /bin/grep -v ^$)" ]; then
/sbin/modprobe -q dm-mod 2>/dev/null
stat_busy "Unlocking encrypted volumes:"
csfailed=0
CS=/sbin/cryptsetup.static
do_crypt() {
if [ $# -ge 3 ]; then
cname="$1"
csrc="$2"
cpass="$3"
shift 3
copts="$*"
stat_append "${cname}.."
# For some fun reason, the parameter ordering varies for
# LUKS and non-LUKS devices. Joy.
if [ "${cpass}" = "SWAP" ]; then
# This is DANGEROUS! The only possible safety check
# is to not proceed in case we find a LUKS device
# This may cause dataloss if it is not used carefully
if $CS isLuks $csrc 2>/dev/null; then
false
else
$CS -d /dev/urandom $copts create $cname $csrc >/dev/null
if [ $? -eq 0 ]; then
stat_append "creating swapspace.."
/sbin/mkswap -f -L $cname /dev/mapper/$cname >/dev/null
fi
fi
elif [ "${cpass}" = "ASK" ]; then
printf "\nOpening '${cname}' volume:\n"
if $CS isLuks $csrc 2>/dev/null; then
$CS $copts luksOpen $csrc $cname < /dev/console
else
$CS $copts create $cname $csrc < /dev/console
fi
elif [ "${cpass:0:1}" != "/" ]; then
if $CS isLuks $csrc 2>/dev/null; then
echo "$cpass" | $CS $copts luksOpen $csrc $cname >/dev/null
else
echo "$cpass" | $CS $copts create $cname $csrc >/dev/null
fi
else
if $CS isLuks $csrc 2>/dev/null; then
$CS -d $cpass $copts luksOpen $csrc $cname >/dev/null
else
$CS -d $cpass $copts create $cname $csrc >/dev/null
fi
fi
if [ $? -ne 0 ]; then
csfailed=1
stat_append "failed "
else
stat_append "ok "
fi
fi
}
while read line; do
eval do_crypt "$line"
done </etc/crypttab
if [ $csfailed -eq 0 ]; then
stat_done
else
stat_fail
fi
# Maybe someone has LVM on an encrypted block device
if [ "$USELVM" = "yes" -o "$USELVM" = "YES" ]; then
if [ -x /sbin/lvm -a -d /sys/block ]; then
/sbin/lvm vgscan --ignorelockingfailure --mknodes >/dev/null
/sbin/lvm vgchange --ignorelockingfailure -a y >/dev/null
fi
fi
fi
status "Mounting Root Read-only" /bin/mount -n -o remount,ro /
FORCEFSCK=
[ -f /forcefsck ] && FORCEFSCK="-- -f"
NETFS="nonfs,nonfs4,nosmbfs,nocifs,nocodafs,noncpfs,nosysfs,noshfs,nofuse,nofuseblk,noglusterfs"
fsck_reboot() {
echo "Automatic reboot in progress..."
/bin/umount -a
/bin/mount -n -o remount,ro /
/sbin/reboot -f
exit 0
}
if [ -x /sbin/fsck ]; then
stat_busy "Checking Filesystems"
FSCK_OUT=/dev/stdout
FSCK_ERR=/dev/null
/sbin/fsck -A -T -C -a -t $NETFS $FORCEFSCK >$FSCK_OUT 2>$FSCK_ERR
fsckret=$?
if [ ${fsckret} -gt 1 ]; then
stat_fail
fi
if [ $((${fsckret}&2)) -eq 2 ]; then
echo
echo "********************** REBOOT REQUIRED *********************"
echo "* *"
echo "* The system will be rebooted automatically in 15 seconds. *"
echo "* *"
echo "************************************************************"
echo
/bin/sleep 15
fsck_reboot
fi
if [ ${fsckret} -gt 1 -a ${fsckret} -ne 32 ]; then
echo
echo "***************** FILESYSTEM CHECK FAILED ****************"
echo "* *"
echo "* Please repair manually and reboot. Note that the root *"
echo "* file system is currently mounted read-only. To remount *"
echo "* it read-write type: mount -n -o remount,rw / *"
echo "* When you exit the maintenance shell the system will *"
echo "* reboot automatically. *"
echo "* *"
echo "************************************************************"
echo
/sbin/sulogin -p
fsck_reboot
fi
stat_done
fi
stat_busy "Mounting Local Filesystems"
/bin/mount -n -o remount,rw /
/bin/rm -f /etc/mtab*
# make sure / gets written to /etc/mtab
/bin/mount -o remount,rw /
# Write /proc, /sys and /dev to /etc/mtab
if [ -e /proc/mounts ]; then
/bin/grep -e "/proc " -e "/sys " -e "/dev " /proc/mounts >> /etc/mtab
fi
# now mount all the local filesystems
/bin/mount -a -t $NETFS -O no_netdev
stat_done
status "Activating Swap" /sbin/swapon -a
stat_busy "Configuring System Clock"
if [ ! -f /var/lib/hwclock/adjtime ]; then
echo "0.0 0 0.0" > /var/lib/hwclock/adjtime
fi
if [ "$TIMEZONE" != "" -a -e "/usr/share/zoneinfo/$TIMEZONE" ]; then
/bin/rm -f /etc/localtime
/bin/cp "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
fi
if [ -n "$HWCLOCK_PARAMS" ]; then
/sbin/hwclock --adjust #Adjust for system drift
/sbin/hwclock $HWCLOCK_PARAMS
fi
stat_done
RANDOM_SEED=/var/lib/misc/random-seed
if [ -f $RANDOM_SEED ]; then
stat_busy "Initializing Random Seed"
/bin/cat $RANDOM_SEED > /dev/urandom
stat_done
fi
stat_busy "Removing Leftover Files"
/bin/rm -f /etc/nologin &>/dev/null
/bin/rm -f /etc/shutdownpid &>/dev/null
/bin/rm -f /var/lock/* &>/dev/null
/bin/rm -rf /tmp/* /tmp/.* &>/dev/null
/bin/rm -f /forcefsck &>/dev/null
(cd /var/run && /usr/bin/find . ! -type d -exec /bin/rm -f -- {} \; )
: > /var/run/utmp
/bin/chmod 0664 /var/run/utmp
# Keep {x,k,g}dm happy with xorg
/bin/mkdir /tmp/.ICE-unix && /bin/chmod 1777 /tmp/.ICE-unix
/bin/mkdir /tmp/.X11-unix && /bin/chmod 1777 /tmp/.X11-unix
stat_done
#status "Updating Shared Library Links" /sbin/ldconfig
if [ "$HOSTNAME" != "" ]; then
status "Setting Hostname: $HOSTNAME" /bin/hostname $HOSTNAME
fi
# Set the NIS domain name, if necessary
[ -f /etc/conf.d/nisdomainname ] && . /etc/conf.d/nisdomainname
if [ "$NISDOMAINNAME" != "" ]; then
status "Setting NIS Domain Name: $NISDOMAINNAME" /bin/nisdomainname $NISDOMAINNAME
fi
status "Updating Module Dependencies" /sbin/depmod -A
# Flush old locale settings
: >/etc/profile.d/locale.sh
/bin/chmod 755 /etc/profile.d/locale.sh
# Set user defined locale
[ -z "$LOCALE" ] && LOCALE="en_US"
stat_busy "Setting Locale: $LOCALE"
echo "export LANG=$LOCALE" >>/etc/profile.d/locale.sh
stat_done
if echo "$LOCALE" | /bin/grep -qi utf ; then
stat_busy "Setting Consoles to UTF-8 mode"
# UTF-8 consoles are default since 2.6.24 kernel
# this code is needed not only for older kernels,
# but also when user has set vt.default_utf8=0 but LOCALE is *.UTF-8.
for i in /dev/tty[0-9]*; do
/usr/bin/kbd_mode -u < ${i}
printf "\e%%G" > ${i}
done
# the $CONSOLE check helps us avoid this when running scripts from cron
echo 'if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\e%%G"; fi' >>/etc/profile.d/locale.sh
stat_done
[ -n "$KEYMAP" ] && status "Loading Keyboard Map: $KEYMAP" /bin/loadkeys -q -u $KEYMAP
else
stat_busy "Setting Consoles to legacy mode"
# make non-UTF-8 consoles work on 2.6.24 and newer kernels
for i in /dev/tty[0-9]*; do
/usr/bin/kbd_mode -a < ${i}
printf "\e%%@" > ${i}
done
# the $CONSOLE check helps us avoid this when running scripts from cron
echo 'if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\e%%@"; fi' >>/etc/profile.d/locale.sh
stat_done
[ -n "$KEYMAP" ] && status "Loading Keyboard Map: $KEYMAP" /bin/loadkeys -q $KEYMAP
fi
if [ -n "$CONSOLEFONT" ]; then
stat_busy "Loading Console Font: $CONSOLEFONT"
#CONSOLEMAP in UTF-8 shouldn't be used
if [ -n "$CONSOLEMAP" ] && echo "$LOCALE" | /bin/grep -qi utf ; then
CONSOLEMAP=""
fi
for i in /dev/tty[0-9]*; do
if [ -n "$CONSOLEMAP" ]; then
/usr/bin/setfont -m $CONSOLEMAP $CONSOLEFONT -C ${i} >/dev/null 2>&1
else
/usr/bin/setfont $CONSOLEFONT -C ${i} >/dev/null 2>&1
fi
done
if [ $? -ne 0 ]; then
stat_fail
else
for i in /dev/tty[0-9]*; do
printf "\e(K" > ${i}
done
# the $CONSOLE check helps us avoid this when running scripts from cron
echo 'if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\e(K"; fi' >>/etc/profile.d/locale.sh
stat_done
fi
fi
# Adding persistent network/cdrom generated rules
if [ -f "/dev/.udev/tmp-rules--70-persistent-cd.rules" ]; then
stat_busy "Adding persistent cdrom udev rules"
/bin/cat /dev/.udev/tmp-rules--70-persistent-cd.rules >> /etc/udev/rules.d/70-persistent-cd.rules
stat_done
fi
if [ -f "/dev/.udev/tmp-rules--70-persistent-net.rules" ]; then
stat_busy "Adding persistent network udev rules"
/bin/cat /dev/.udev/tmp-rules--70-persistent-net.rules >> /etc/udev/rules.d/70-persistent-net.rules
stat_done
fi
/bin/dmesg >| /var/log/dmesg.log
# End of file
# vim: set ts=2 noet:

View file

@ -1,6 +1,6 @@
# $Id$
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Judd Vinet <jvinet@zeroflux.org>
# Modified by OpenPogo
pkgname=iproute2
pkgver=2.6.28
@ -10,28 +10,24 @@ arch=('arm')
license=('GPL2')
url="http://www.linux-foundation.org/en/Net:Iproute2"
depends=('linux-atm' 'perl')
provides=('iproute')
conflicts=('iproute')
replaces=('iproute')
backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_protos' \
'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables')
backup=('opt/etc/iproute2/ematch_map' 'opt/etc/iproute2/rt_dsfield' 'opt/etc/iproute2/rt_protos' \
'opt/etc/iproute2/rt_realms' 'opt/etc/iproute2/rt_scopes' 'opt/etc/iproute2/rt_tables')
source=(http://devresources.linux-foundation.org/dev/iproute2/download/iproute2-${pkgver}.tar.bz2)
md5sums=('595f9b17320f69e8d30d2fa80f1bca14')
build() {
cd $srcdir/iproute2-${pkgver}
sed -i 's|/usr/local/lib/iptables|/usr/lib/iptables|' include/iptables.h || return 1
sed -i 's|=/share|=/usr/share|' Makefile || return 1
sed -i 's|=/sbin|=/usr/sbin|' Makefile || return 1
sed -i 's|/opt/local/lib/iptables|/opt/lib/iptables|' include/iptables.h || return 1
sed -i 's|=/share|=/opt/share|' Makefile || return 1
sed -i 's|=/sbin|=/opt/sbin|' Makefile || return 1
./configure || return 1
make || return 1
make DESTDIR=$pkgdir install || return 1
# chmod 755 $pkgdir/usr/sbin/ifcfg || return 1
}

File diff suppressed because it is too large Load diff

View file

@ -1,129 +0,0 @@
Submitted By: Joe Ciccone <jciccone@gmail.com>
Date: 2008-09-31
Upstream Status: Unknown
Origin: Joe Ciccone
Description: This patch gives the ability to change the libdir.
--- iproute2-2.6.26.orig/Config 1969-12-31 19:00:00.000000000 -0500
+++ iproute2-2.6.26/Config 2008-09-13 15:07:31.000000000 -0400
@@ -0,0 +1 @@
+# Generated config based on /usr/src/clfs-tarballs/conglomeration/iproute2-2.6.26/include
diff -Naur iproute2-2.6.26.orig/include/iptables.h iproute2-2.6.26/include/iptables.h
--- iproute2-2.6.26.orig/include/iptables.h 2008-07-25 16:46:07.000000000 -0400
+++ iproute2-2.6.26/include/iptables.h 2008-09-13 15:43:33.000000000 -0400
@@ -4,8 +4,12 @@
#include "iptables_common.h"
#include "libiptc/libiptc.h"
+#ifndef LIBDIR
+#define LIBDIR "/usr/lib"
+#endif
+
#ifndef IPT_LIB_DIR
-#define IPT_LIB_DIR "/usr/local/lib/iptables"
+#define IPT_LIB_DIR LIBDIR "/iptables"
#endif
#ifndef IPPROTO_SCTP
diff -Naur iproute2-2.6.26.orig/ip/iplink.c iproute2-2.6.26/ip/iplink.c
--- iproute2-2.6.26.orig/ip/iplink.c 2008-07-25 16:46:07.000000000 -0400
+++ iproute2-2.6.26/ip/iplink.c 2008-09-13 15:14:41.000000000 -0400
@@ -34,7 +34,11 @@
#define IPLINK_IOCTL_COMPAT 1
#ifndef DESTDIR
-#define DESTDIR "/usr/"
+#define DESTDIR "/usr"
+#endif
+
+#ifndef LIBDIR
+#define LIBDIR "/usr/lib"
#endif
static void usage(void) __attribute__((noreturn));
@@ -81,7 +85,7 @@
if (strcmp(l->id, id) == 0)
return l;
- snprintf(buf, sizeof(buf), DESTDIR "/lib/ip/link_%s.so", id);
+ snprintf(buf, sizeof(buf), DESTDIR LIBDIR "/ip/link_%s.so", id);
dlh = dlopen(buf, RTLD_LAZY);
if (dlh == NULL) {
/* look in current binary, only open once */
diff -Naur iproute2-2.6.26.orig/Makefile iproute2-2.6.26/Makefile
--- iproute2-2.6.26.orig/Makefile 2008-07-25 16:46:07.000000000 -0400
+++ iproute2-2.6.26/Makefile 2008-09-13 15:15:24.000000000 -0400
@@ -1,13 +1,15 @@
-DESTDIR=/usr/
+DESTDIR=/usr
SBINDIR=/sbin
CONFDIR=/etc/iproute2
DOCDIR=/share/doc/iproute2
MANDIR=/share/man
+LIBDIR=/usr/lib
+
# Path to db_185.h include
DBM_INCLUDE:=/usr/include
-DEFINES= -DRESOLVE_HOSTNAMES -DDESTDIR=\"$(DESTDIR)\"
+DEFINES= -DRESOLVE_HOSTNAMES -DDESTDIR=\"$(DESTDIR)\" -DLIBDIR=\"$(LIBDIR)\"
#options if you have a bind>=4.9.4 libresolv (or, maybe, glibc)
LDLIBS=-lresolv
diff -Naur iproute2-2.6.26.orig/netem/Makefile iproute2-2.6.26/netem/Makefile
--- iproute2-2.6.26.orig/netem/Makefile 2008-07-25 16:46:07.000000000 -0400
+++ iproute2-2.6.26/netem/Makefile 2008-09-13 14:27:07.000000000 -0400
@@ -20,9 +20,9 @@
$(HOSTCC) $(CCOPTS) -I../include -o $@ $@.c -lm
install: all
- mkdir -p $(DESTDIR)/lib/tc
+ mkdir -p $(DESTDIR)$(LIBDIR)/tc
for i in $(DISTDATA); \
- do install -m 755 $$i $(DESTDIR)/lib/tc; \
+ do install -m 755 $$i $(DESTDIR)$(LIBDIR)/tc; \
done
clean:
diff -Naur iproute2-2.6.26.orig/tc/Makefile iproute2-2.6.26/tc/Makefile
--- iproute2-2.6.26.orig/tc/Makefile 2008-07-25 16:46:07.000000000 -0400
+++ iproute2-2.6.26/tc/Makefile 2008-09-13 14:30:37.000000000 -0400
@@ -72,10 +72,10 @@
$(AR) rcs $@ $(TCLIB)
install: all
- mkdir -p $(DESTDIR)/lib/tc
+ mkdir -p $(DESTDIR)$(LIBDIR)/tc
install -m 0755 tc $(DESTDIR)$(SBINDIR)
for i in $(TCSO); \
- do install -m 755 $$i $(DESTDIR)/lib/tc; \
+ do install -m 755 $$i $(DESTDIR)$(LIBDIR)/tc; \
done
clean:
diff -Naur iproute2-2.6.26.orig/tc/tc_util.c iproute2-2.6.26/tc/tc_util.c
--- iproute2-2.6.26.orig/tc/tc_util.c 2008-07-25 16:46:07.000000000 -0400
+++ iproute2-2.6.26/tc/tc_util.c 2008-09-13 15:15:16.000000000 -0400
@@ -25,7 +25,11 @@
#include "tc_util.h"
#ifndef DESTDIR
-#define DESTDIR "/usr/"
+#define DESTDIR "/usr"
+#endif
+
+#ifndef LIBDIR
+#define LIBDIR "/usr/lib"
#endif
const char *get_tc_lib(void)
@@ -34,7 +38,7 @@
lib_dir = getenv("TC_LIB_DIR");
if (!lib_dir)
- lib_dir = DESTDIR "/lib/tc";
+ lib_dir = DESTDIR LIBDIR "/tc";
return lib_dir;

View file

@ -1,4 +1,5 @@
# Maintainer: Alexander Foremny <alexanderforemny@gmail.com>
# Modified by OpenPogo
pkgname=iputils
pkgver=20071127
@ -6,32 +7,36 @@ _traceroutever=1.4a12
pkgrel=3
pkgdesc="IP Configuration Utilities (and Ping)"
arch=(arm)
groups=(base)
license=('GPL')
url="http://www.linuxfoundation.org/en/Net:Iputils"
depends=(glibc)
source=(http://www.skbuff.net/iputils/$pkgname-s$pkgver.tar.bz2
ftp://ftp.ee.lbl.gov/traceroute-$_traceroutever.tar.gz
iputils-20070202-no-open-max.patch permission-fix.patch)
iputils-20070202-no-open-max.patch
permission-fix.patch)
md5sums=('12245e9927d60ff5cf4a99d265bcb7d3'
'964d599ef696efccdeebe7721cd4828d'
'a2cbc0174dd883f68297aa7f3e7c4f5c'
'66109966cad06e425bb12a78bab85b70')
build() {
msg "Building ipuitls."
cd "$srcdir/iputils-s$pkgver"
patch -Np1 -i ../iputils-20070202-no-open-max.patch || return 1
make KERNEL_INCLUDE=/usr/include || return 1
make KERNEL_INCLUDE=/opt/include || return 1
for i in arping clockdiff rarpd rdisc tftpd tracepath tracepath6; do
install -D -m755 $i $startdir/pkg/usr/sbin/$i
install -D -m755 $i $startdir/pkg/opt/sbin/$i
done
for i in ping ping6 traceroute6; do
install -D -m4755 $i $startdir/pkg/bin/$i
install -D -m4755 $i $startdir/pkg/opt/bin/$i
done
msg "Building traceroute."
cd "$srcdir/traceroute-$_traceroutever"
patch -Np1 -i ../permission-fix.patch || return 1
./configure --prefix=/usr --sbindir=/bin
./configure --prefix=/opt --sbindir=/opt/bin
make CFLAGS="${CFLAGS} -Ilinux-include/" || return 1
make DESTDIR=${startdir}/pkg install
}

View file

@ -1,4 +1,6 @@
# Maintainer: Philipp Scholl <pscholl@bawue.de>
# Modified by OpenPogo
pkgname=kbd
pkgver=1.15
pkgrel=1
@ -7,21 +9,14 @@ arch=(arm)
url="ftp://ftp.altlinux.org/pub/people/legion/kbd/"
license=('GPL')
groups=('base')
depends=('glibc')
depends=()
source=(ftp://ftp.altlinux.org/pub/people/legion/kbd/${pkgname}-${pkgver}.tar.gz)
md5sums=('ba3fd20e6c79e58422c3cc6b28718939')
build() {
cd ${startdir}/src/${pkgname}-${pkgver}
./configure --prefix=/usr --datadir=/usr/share/kbd --mandir=/usr/share/man
./configure --prefix=/opt --datadir=/opt/share/kbd --mandir=/opt/share/man
make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes || return 1
make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes DESTDIR=${startdir}/pkg install
# this is needed because initscripts call /bin/loadkeys
# remove this when next versions of kbd
# and initscripts with /usr/bin/loadkeys usage will be released
mkdir ${startdir}/pkg/bin
ln -s /usr/bin/loadkeys ${startdir}/pkg/bin/loadkeys
}

View file

@ -1,25 +0,0 @@
# Maintainer: Krzysztof "hiciu" Warzecha <kwarzecha7@gmail.com>
pkgname=kernel-headers
pkgver=2.6.29.1
_basever=2.6.29
pkgrel=1
pkgdesc="Kernel headers sanitized for use in userspace"
arch=(arm)
license=('GPL')
url="http://www.gnu.org/software/libc"
groups=('base')
source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-${_basever}.tar.bz2
http://www.kernel.org/pub/linux/kernel/v2.6/patch-${pkgver}.bz2)
md5sums=('64921b5ff5cdadbccfcd3820f03be7d8'
'87c6fbf4096b644d66d4da8bb00641a5')
build() {
cd ${srcdir}/linux-${_basever}
patch -Np1 -i ${srcdir}/patch-${pkgver} || return 1
make mrproper
make headers_check || return 1
make INSTALL_HDR_PATH=${pkgdir}/usr headers_install
rm -rf ${pkgdir}/usr/include/drm
}

View file

@ -1,91 +0,0 @@
From: Patrick McHardy <kaber@trash.net>
Date: Wed, 21 May 2008 21:08:38 +0000 (-0700)
Subject: netfilter: Move linux/types.h inclusions outside of #ifdef __KERNEL__
X-Git-Tag: v2.6.26-rc4~7^2~9
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=c8942f1f0a7e2160ebf2e51ba89e50ee5895a1e7
netfilter: Move linux/types.h inclusions outside of #ifdef __KERNEL__
Greg Steuck <greg@nest.cx> points out that some of the netfilter
headers can't be used in userspace without including linux/types.h
first. The headers include their own linux/types.h include statements,
these are stripped by make headers-install because they are inside
#ifdef __KERNEL__ however. Move them out to fix this.
Reported and Tested by Greg Steuck.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
---
diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h
index e4c6659..0c5eb7e 100644
--- a/include/linux/netfilter.h
+++ b/include/linux/netfilter.h
@@ -3,7 +3,6 @@
#ifdef __KERNEL__
#include <linux/init.h>
-#include <linux/types.h>
#include <linux/skbuff.h>
#include <linux/net.h>
#include <linux/netdevice.h>
@@ -14,6 +13,7 @@
#include <linux/list.h>
#include <net/net_namespace.h>
#endif
+#include <linux/types.h>
#include <linux/compiler.h>
/* Responses from hook functions. */
diff --git a/include/linux/netfilter_arp/arp_tables.h b/include/linux/netfilter_arp/arp_tables.h
index dd9c97f..590ac3d 100644
--- a/include/linux/netfilter_arp/arp_tables.h
+++ b/include/linux/netfilter_arp/arp_tables.h
@@ -11,11 +11,11 @@
#ifdef __KERNEL__
#include <linux/if.h>
-#include <linux/types.h>
#include <linux/in.h>
#include <linux/if_arp.h>
#include <linux/skbuff.h>
#endif
+#include <linux/types.h>
#include <linux/compiler.h>
#include <linux/netfilter_arp.h>
diff --git a/include/linux/netfilter_ipv4/ip_tables.h b/include/linux/netfilter_ipv4/ip_tables.h
index bfc889f..092bd50 100644
--- a/include/linux/netfilter_ipv4/ip_tables.h
+++ b/include/linux/netfilter_ipv4/ip_tables.h
@@ -17,11 +17,11 @@
#ifdef __KERNEL__
#include <linux/if.h>
-#include <linux/types.h>
#include <linux/in.h>
#include <linux/ip.h>
#include <linux/skbuff.h>
#endif
+#include <linux/types.h>
#include <linux/compiler.h>
#include <linux/netfilter_ipv4.h>
diff --git a/include/linux/netfilter_ipv6/ip6_tables.h b/include/linux/netfilter_ipv6/ip6_tables.h
index f2507dc..1089e33 100644
--- a/include/linux/netfilter_ipv6/ip6_tables.h
+++ b/include/linux/netfilter_ipv6/ip6_tables.h
@@ -17,11 +17,11 @@
#ifdef __KERNEL__
#include <linux/if.h>
-#include <linux/types.h>
#include <linux/in6.h>
#include <linux/ipv6.h>
#include <linux/skbuff.h>
#endif
+#include <linux/types.h>
#include <linux/compiler.h>
#include <linux/netfilter_ipv6.h>

View file

@ -1,60 +0,0 @@
# Maintainer: Krzysztof "hiciu" Warzecha <kwarzecha7@gmail.com>
pkgname=kernel26-openmoko
pkgver=2.6.29
_gitver=dcd90798cdab0ab1e7c1fb56af8841bb225b5fdc
pkgrel=4
pkgdesc="The Linux Kernel and modules"
arch=(arm)
license=('GPL2')
url="http://wiki.openmoko.org/wiki/Kernel"
depends=('coreutils')
makedepends=('git' 'uboot-mkimage-native')
replaces=('kernel26')
conflicts=('kernel26')
provides=('kernel26')
source=('append-GTA02' 'ppoll.patch' 'gcc-4.4.patch' 'aufs2-29.patch' 'config')
md5sums=('ad1cb2f0a3000f5285c58b22fe8f4de3'
'54b7414a29b007cfb58de8dae9398021'
'e47d7b36a921ecdf913bdd3f9af08a0a'
'd41d8cd98f00b204e9800998ecf8427e'
'b70b0eae868962745d06f6cfe56b417e')
build() {
cd ${srcdir}
# make this build clean
if [ -x linux-2.6 ]; then
cd linux-2.6
else
git clone --depth 1 -n git://git.openmoko.org/git/kernel.git linux-2.6
cd linux-2.6
git checkout --track -b andy-tracking origin/andy-tracking
# include ppoll.patch needed by klibc
# gathered from arm linux kernel tree, should be merged in official
patch -p1 < ${srcdir}/ppoll.patch
# without this patch modules are unloadable
patch -p0 < ${srcdir}/gcc-4.4.patch
# add aufs2 support to kernel
patch -p1 < ${srcdir}/aufs2-29.patch
fi
cp ${srcdir}/config .config
make -j4 ARCH=arm
mkdir ${pkgdir}/boot
# these are copied from build sh in andy-tracking
objcopy -O binary -R .note -R .comment -S arch/arm/boot/compressed/vmlinux linux.bin
mkimage -A arm -O linux -T kernel -C none -a 30008000 -n "OM GTA02 andy-tracking" -d linux.bin ${pkgdir}/boot/uImage-moredrivers-GTA02.bin
make INSTALL_MOD_PATH=${pkgdir} ARCH=arm modules_install
cd ${pkgdir}/boot
ln -s uImage-moredrivers-*.bin uImage-GTA02.bin
cp ${srcdir}/append-GTA02 ${pkgdir}/boot
}

View file

@ -1 +0,0 @@
console=tty0

File diff suppressed because it is too large Load diff

View file

@ -1,14 +0,0 @@
--- Makefile.orig 2009-09-02 23:49:06.000000000 +0000
+++ Makefile 2009-09-02 23:49:40.000000000 +0000
@@ -565,6 +565,11 @@
# disable pointer signed / unsigned warnings in gcc 4.0
KBUILD_CFLAGS += $(call cc-option,-Wno-pointer-sign,)
+# gcc-4.4 defaults to generating .eh_frame sections, but we aren't
+# interested in those currently. additionally, it causes issues on some
+# architectures.
+KBUILD_CFLAGS += $(call cc-option,-fno-dwarf2-cfi-asm)
+
# Add user supplied CPPFLAGS, AFLAGS and CFLAGS as the last assignments
# But warn user when we do so
warn-assign = \

View file

@ -1,365 +0,0 @@
From 369842658a36bcea28ecb643ba4bdb53919330dd Mon Sep 17 00:00:00 2001
From: Mikael Pettersson <mikpe@it.uu.se>
Date: Sat, 15 Aug 2009 12:58:11 +0100
Subject: [PATCH] ARM: 5677/1: ARM support for TIF_RESTORE_SIGMASK/pselect6/ppoll/epoll_pwait
This patch adds support for TIF_RESTORE_SIGMASK to ARM's
signal handling, which allows to hook up the pselect6, ppoll,
and epoll_pwait syscalls on ARM.
Tested here with eabi userspace and a test program with a
deliberate race between a child's exit and the parent's
sigprocmask/select sequence. Using sys_pselect6() instead
of sigprocmask/select reliably prevents the race.
The other arch's support for TIF_RESTORE_SIGMASK has evolved
over time:
In 2.6.16:
- add TIF_RESTORE_SIGMASK which parallels TIF_SIGPENDING
- test both when checking for pending signal [changed later]
- reimplement sys_sigsuspend() to use current->saved_sigmask,
TIF_RESTORE_SIGMASK [changed later], and -ERESTARTNOHAND;
ditto for sys_rt_sigsuspend(), but drop private code and
use common code via __ARCH_WANT_SYS_RT_SIGSUSPEND;
- there are now no "extra" calls to do_signal() so its oldset
parameter is always &current->blocked so need not be passed,
also its return value is changed to void
- change handle_signal() to return 0/-errno
- change do_signal() to honor TIF_RESTORE_SIGMASK:
+ get oldset from current->saved_sigmask if TIF_RESTORE_SIGMASK
is set
+ if handle_signal() was successful then clear TIF_RESTORE_SIGMASK
+ if no signal was delivered and TIF_RESTORE_SIGMASK is set then
clear it and restore the sigmask
- hook up sys_pselect6() and sys_ppoll()
In 2.6.19:
- hook up sys_epoll_pwait()
In 2.6.26:
- allow archs to override how TIF_RESTORE_SIGMASK is implemented;
default set_restore_sigmask() sets both TIF_RESTORE_SIGMASK and
TIF_SIGPENDING; archs need now just test TIF_SIGPENDING again
when checking for pending signal work; some archs now implement
TIF_RESTORE_SIGMASK as a secondary/non-atomic thread flag bit
- call set_restore_sigmask() in sys_sigsuspend() instead of setting
TIF_RESTORE_SIGMASK
In 2.6.29-rc:
- kill sys_pselect7() which no arch wanted
So for 2.6.31-rc6/ARM this patch does the following:
- Add TIF_RESTORE_SIGMASK. Use the generic set_restore_sigmask()
which sets both TIF_SIGPENDING and TIF_RESTORE_SIGMASK, so
TIF_RESTORE_SIGMASK need not claim one of the scarce low thread
flags, and existing TIF_SIGPENDING and _TIF_WORK_MASK tests need
not be extended for TIF_RESTORE_SIGMASK.
- sys_sigsuspend() is reimplemented to use current->saved_sigmask
and set_restore_sigmask(), making it identical to most other archs
- The private code for sys_rt_sigsuspend() is removed, instead
generic code supplies it via __ARCH_WANT_SYS_RT_SIGSUSPEND.
- sys_sigsuspend() and sys_rt_sigsuspend() no longer need a pt_regs
parameter, so their assembly code wrappers are removed.
- handle_signal() is changed to return 0 on success or -errno.
- The oldset parameter to do_signal() is now redundant and removed,
and the return value is now also redundant and changed to void.
- do_signal() is changed to honor TIF_RESTORE_SIGMASK:
+ get oldset from current->saved_sigmask if TIF_RESTORE_SIGMASK
is set
+ if handle_signal() was successful then clear TIF_RESTORE_SIGMASK
+ if no signal was delivered and TIF_RESTORE_SIGMASK is set then
clear it and restore the sigmask
- Hook up sys_pselect6, sys_ppoll, and sys_epoll_pwait.
Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
---
arch/arm/include/asm/thread_info.h | 2 +
arch/arm/include/asm/unistd.h | 7 ++-
arch/arm/kernel/calls.S | 10 ++--
arch/arm/kernel/entry-common.S | 10 ----
arch/arm/kernel/signal.c | 86 +++++++++++++++--------------------
5 files changed, 48 insertions(+), 67 deletions(-)
diff --git a/arch/arm/include/asm/thread_info.h b/arch/arm/include/asm/thread_info.h
index 73394e5..e20d805 100644
--- a/arch/arm/include/asm/thread_info.h
+++ b/arch/arm/include/asm/thread_info.h
@@ -140,6 +140,7 @@ extern void vfp_sync_state(struct thread_info *thread);
#define TIF_USING_IWMMXT 17
#define TIF_MEMDIE 18
#define TIF_FREEZE 19
+#define TIF_RESTORE_SIGMASK 20
#define _TIF_SIGPENDING (1 << TIF_SIGPENDING)
#define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED)
@@ -147,6 +148,7 @@ extern void vfp_sync_state(struct thread_info *thread);
#define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG)
#define _TIF_USING_IWMMXT (1 << TIF_USING_IWMMXT)
#define _TIF_FREEZE (1 << TIF_FREEZE)
+#define _TIF_RESTORE_SIGMASK (1 << TIF_RESTORE_SIGMASK)
/*
* Change these and you break ASM code in entry-common.S
diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
index 0e97b8c..9122c9e 100644
--- a/arch/arm/include/asm/unistd.h
+++ b/arch/arm/include/asm/unistd.h
@@ -360,8 +360,8 @@
#define __NR_readlinkat (__NR_SYSCALL_BASE+332)
#define __NR_fchmodat (__NR_SYSCALL_BASE+333)
#define __NR_faccessat (__NR_SYSCALL_BASE+334)
- /* 335 for pselect6 */
- /* 336 for ppoll */
+#define __NR_pselect6 (__NR_SYSCALL_BASE+335)
+#define __NR_ppoll (__NR_SYSCALL_BASE+336)
#define __NR_unshare (__NR_SYSCALL_BASE+337)
#define __NR_set_robust_list (__NR_SYSCALL_BASE+338)
#define __NR_get_robust_list (__NR_SYSCALL_BASE+339)
@@ -372,7 +372,7 @@
#define __NR_vmsplice (__NR_SYSCALL_BASE+343)
#define __NR_move_pages (__NR_SYSCALL_BASE+344)
#define __NR_getcpu (__NR_SYSCALL_BASE+345)
- /* 346 for epoll_pwait */
+#define __NR_epoll_pwait (__NR_SYSCALL_BASE+346)
#define __NR_kexec_load (__NR_SYSCALL_BASE+347)
#define __NR_utimensat (__NR_SYSCALL_BASE+348)
#define __NR_signalfd (__NR_SYSCALL_BASE+349)
@@ -432,6 +432,7 @@
#define __ARCH_WANT_SYS_SIGPENDING
#define __ARCH_WANT_SYS_SIGPROCMASK
#define __ARCH_WANT_SYS_RT_SIGACTION
+#define __ARCH_WANT_SYS_RT_SIGSUSPEND
#if !defined(CONFIG_AEABI) || defined(CONFIG_OABI_COMPAT)
#define __ARCH_WANT_SYS_TIME
diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S
index f776e72..ecfa989 100644
--- a/arch/arm/kernel/calls.S
+++ b/arch/arm/kernel/calls.S
@@ -81,7 +81,7 @@
CALL(sys_ni_syscall) /* was sys_ssetmask */
/* 70 */ CALL(sys_setreuid16)
CALL(sys_setregid16)
- CALL(sys_sigsuspend_wrapper)
+ CALL(sys_sigsuspend)
CALL(sys_sigpending)
CALL(sys_sethostname)
/* 75 */ CALL(sys_setrlimit)
@@ -188,7 +188,7 @@
CALL(sys_rt_sigpending)
CALL(sys_rt_sigtimedwait)
CALL(sys_rt_sigqueueinfo)
- CALL(sys_rt_sigsuspend_wrapper)
+ CALL(sys_rt_sigsuspend)
/* 180 */ CALL(ABI(sys_pread64, sys_oabi_pread64))
CALL(ABI(sys_pwrite64, sys_oabi_pwrite64))
CALL(sys_chown16)
@@ -344,8 +344,8 @@
CALL(sys_readlinkat)
CALL(sys_fchmodat)
CALL(sys_faccessat)
-/* 335 */ CALL(sys_ni_syscall) /* eventually pselect6 */
- CALL(sys_ni_syscall) /* eventually ppoll */
+/* 335 */ CALL(sys_pselect6)
+ CALL(sys_ppoll)
CALL(sys_unshare)
CALL(sys_set_robust_list)
CALL(sys_get_robust_list)
@@ -355,7 +355,7 @@
CALL(sys_vmsplice)
CALL(sys_move_pages)
/* 345 */ CALL(sys_getcpu)
- CALL(sys_ni_syscall) /* eventually epoll_pwait */
+ CALL(sys_epoll_pwait)
CALL(sys_kexec_load)
CALL(sys_utimensat)
CALL(sys_signalfd)
diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S
index 366e509..bfa7f0a 100644
--- a/arch/arm/kernel/entry-common.S
+++ b/arch/arm/kernel/entry-common.S
@@ -373,16 +373,6 @@ sys_clone_wrapper:
b sys_clone
ENDPROC(sys_clone_wrapper)
-sys_sigsuspend_wrapper:
- add r3, sp, #S_OFF
- b sys_sigsuspend
-ENDPROC(sys_sigsuspend_wrapper)
-
-sys_rt_sigsuspend_wrapper:
- add r2, sp, #S_OFF
- b sys_rt_sigsuspend
-ENDPROC(sys_rt_sigsuspend_wrapper)
-
sys_sigreturn_wrapper:
add r0, sp, #S_OFF
b sys_sigreturn
diff --git a/arch/arm/kernel/signal.c b/arch/arm/kernel/signal.c
index 93bb424..e27ee1f 100644
--- a/arch/arm/kernel/signal.c
+++ b/arch/arm/kernel/signal.c
@@ -47,57 +47,22 @@ const unsigned long sigreturn_codes[7] = {
MOV_R7_NR_RT_SIGRETURN, SWI_SYS_RT_SIGRETURN, SWI_THUMB_RT_SIGRETURN,
};
-static int do_signal(sigset_t *oldset, struct pt_regs * regs, int syscall);
-
/*
* atomically swap in the new signal mask, and wait for a signal.
*/
-asmlinkage int sys_sigsuspend(int restart, unsigned long oldmask, old_sigset_t mask, struct pt_regs *regs)
+asmlinkage int sys_sigsuspend(int restart, unsigned long oldmask, old_sigset_t mask)
{
- sigset_t saveset;
-
mask &= _BLOCKABLE;
spin_lock_irq(&current->sighand->siglock);
- saveset = current->blocked;
+ current->saved_sigmask = current->blocked;
siginitset(&current->blocked, mask);
recalc_sigpending();
spin_unlock_irq(&current->sighand->siglock);
- regs->ARM_r0 = -EINTR;
-
- while (1) {
- current->state = TASK_INTERRUPTIBLE;
- schedule();
- if (do_signal(&saveset, regs, 0))
- return regs->ARM_r0;
- }
-}
-
-asmlinkage int
-sys_rt_sigsuspend(sigset_t __user *unewset, size_t sigsetsize, struct pt_regs *regs)
-{
- sigset_t saveset, newset;
-
- /* XXX: Don't preclude handling different sized sigset_t's. */
- if (sigsetsize != sizeof(sigset_t))
- return -EINVAL;
-
- if (copy_from_user(&newset, unewset, sizeof(newset)))
- return -EFAULT;
- sigdelsetmask(&newset, ~_BLOCKABLE);
-
- spin_lock_irq(&current->sighand->siglock);
- saveset = current->blocked;
- current->blocked = newset;
- recalc_sigpending();
- spin_unlock_irq(&current->sighand->siglock);
- regs->ARM_r0 = -EINTR;
- while (1) {
- current->state = TASK_INTERRUPTIBLE;
- schedule();
- if (do_signal(&saveset, regs, 0))
- return regs->ARM_r0;
- }
+ current->state = TASK_INTERRUPTIBLE;
+ schedule();
+ set_restore_sigmask();
+ return -ERESTARTNOHAND;
}
asmlinkage int
@@ -545,7 +510,7 @@ static inline void setup_syscall_restart(struct pt_regs *regs)
/*
* OK, we're invoking a handler
*/
-static void
+static int
handle_signal(unsigned long sig, struct k_sigaction *ka,
siginfo_t *info, sigset_t *oldset,
struct pt_regs * regs, int syscall)
@@ -596,7 +561,7 @@ handle_signal(unsigned long sig, struct k_sigaction *ka,
if (ret != 0) {
force_sigsegv(sig, tsk);
- return;
+ return ret;
}
/*
@@ -610,6 +575,7 @@ handle_signal(unsigned long sig, struct k_sigaction *ka,
recalc_sigpending();
spin_unlock_irq(&tsk->sighand->siglock);
+ return 0;
}
/*
@@ -621,7 +587,7 @@ handle_signal(unsigned long sig, struct k_sigaction *ka,
* the kernel can handle, and then we build all the user-level signal handling
* stack-frames in one go after that.
*/
-static int do_signal(sigset_t *oldset, struct pt_regs *regs, int syscall)
+static void do_signal(struct pt_regs *regs, int syscall)
{
struct k_sigaction ka;
siginfo_t info;
@@ -634,7 +600,7 @@ static int do_signal(sigset_t *oldset, struct pt_regs *regs, int syscall)
* if so.
*/
if (!user_mode(regs))
- return 0;
+ return;
if (try_to_freeze())
goto no_signal;
@@ -643,9 +609,24 @@ static int do_signal(sigset_t *oldset, struct pt_regs *regs, int syscall)
signr = get_signal_to_deliver(&info, &ka, regs, NULL);
if (signr > 0) {
- handle_signal(signr, &ka, &info, oldset, regs, syscall);
+ sigset_t *oldset;
+
+ if (test_thread_flag(TIF_RESTORE_SIGMASK))
+ oldset = &current->saved_sigmask;
+ else
+ oldset = &current->blocked;
+ if (handle_signal(signr, &ka, &info, oldset, regs, syscall) == 0) {
+ /*
+ * A signal was successfully delivered; the saved
+ * sigmask will have been stored in the signal frame,
+ * and will be restored by sigreturn, so we can simply
+ * clear the TIF_RESTORE_SIGMASK flag.
+ */
+ if (test_thread_flag(TIF_RESTORE_SIGMASK))
+ clear_thread_flag(TIF_RESTORE_SIGMASK);
+ }
single_step_set(current);
- return 1;
+ return;
}
no_signal:
@@ -697,14 +678,21 @@ static int do_signal(sigset_t *oldset, struct pt_regs *regs, int syscall)
regs->ARM_r0 == -ERESTARTNOINTR) {
setup_syscall_restart(regs);
}
+
+ /* If there's no signal to deliver, we just put the saved sigmask
+ * back.
+ */
+ if (test_thread_flag(TIF_RESTORE_SIGMASK)) {
+ clear_thread_flag(TIF_RESTORE_SIGMASK);
+ sigprocmask(SIG_SETMASK, &current->saved_sigmask, NULL);
+ }
}
single_step_set(current);
- return 0;
}
asmlinkage void
do_notify_resume(struct pt_regs *regs, unsigned int thread_flags, int syscall)
{
if (thread_flags & _TIF_SIGPENDING)
- do_signal(&current->blocked, regs, syscall);
+ do_signal(regs, syscall);
}
--
1.6.4

View file

@ -1,31 +0,0 @@
# Maintainer: Krzysztof "hiciu" Warzecha <kwarzecha7@gmail.com>
pkgname=kernel26-qemu
pkgver=2.6.30
pkgrel=4
_patchname="patch-${pkgver}-${pkgrel}-ARCH"
groups=() #see #96
pkgdesc="The Linux Kernel (without modules support) - for qemu-system-arm / ARM Integrator/CP"
arch=('arm')
license=('GPL2')
url="http://kernel.org/"
depends=('coreutils')
source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-${pkgver}.tar.bz2
ftp://ftp.archlinux.org/other/kernel26/${_patchname}.bz2
config)
md5sums=('7a80058a6382e5108cdb5554d1609615'
'8a9575026bf6c8f8117a4832e0031d84'
'3b4b0ba57d7634d6678110afb58dc71a')
build() {
cd ${srcdir}/linux-${pkgver}
# Add -ARCH patches
patch -Np1 -i ${srcdir}/${_patchname} || return 1
cat ../config > .config
yes "" | make config || return 1
make prepare #this can fail, I don't know why...
make bzImage || return 1
mkdir -p ${pkgdir}/boot/
cp arch/arm/boot/zImage ${pkgdir}/boot/zImage-qemu
}

View file

@ -1,900 +0,0 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.17-rc3
# Thu May 4 15:05:06 2006
#
CONFIG_ARM=y
CONFIG_MMU=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_VECTORS_BASE=0xffff0000
#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_INIT_ENV_ARG_LIMIT=32
#
# General setup
#
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_SYSCTL=y
# CONFIG_AUDIT is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
# CONFIG_RELAY is not set
CONFIG_INITRAMFS_SOURCE=""
CONFIG_UID16=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
# CONFIG_EMBEDDED is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SHMEM=y
CONFIG_SLAB=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
# CONFIG_SLOB is not set
#
# Loadable module support
#
# CONFIG_MODULES is not set
#
# Block layer
#
# CONFIG_BLK_DEV_IO_TRACE is not set
#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"
#
# System Type
#
# CONFIG_ARCH_CLPS7500 is not set
# CONFIG_ARCH_CLPS711X is not set
# CONFIG_ARCH_CO285 is not set
# CONFIG_ARCH_EBSA110 is not set
# CONFIG_ARCH_EP93XX is not set
# CONFIG_ARCH_FOOTBRIDGE is not set
CONFIG_ARCH_INTEGRATOR=y
# CONFIG_ARCH_IOP3XX is not set
# CONFIG_ARCH_IXP4XX is not set
# CONFIG_ARCH_IXP2000 is not set
# CONFIG_ARCH_IXP23XX is not set
# CONFIG_ARCH_L7200 is not set
# CONFIG_ARCH_PXA is not set
# CONFIG_ARCH_RPC is not set
# CONFIG_ARCH_SA1100 is not set
# CONFIG_ARCH_S3C2410 is not set
# CONFIG_ARCH_SHARK is not set
# CONFIG_ARCH_LH7A40X is not set
# CONFIG_ARCH_OMAP is not set
# CONFIG_ARCH_VERSATILE is not set
# CONFIG_ARCH_REALVIEW is not set
# CONFIG_ARCH_IMX is not set
# CONFIG_ARCH_H720X is not set
# CONFIG_ARCH_AAEC2000 is not set
# CONFIG_ARCH_AT91RM9200 is not set
#
# Integrator Options
#
# CONFIG_ARCH_INTEGRATOR_AP is not set
CONFIG_ARCH_INTEGRATOR_CP=y
CONFIG_ARCH_CINTEGRATOR=y
#
# Processor Type
#
CONFIG_CPU_32=y
# CONFIG_CPU_ARM720T is not set
# CONFIG_CPU_ARM920T is not set
# CONFIG_CPU_ARM922T is not set
CONFIG_CPU_ARM926T=y
# CONFIG_CPU_ARM1020 is not set
# CONFIG_CPU_ARM1022 is not set
CONFIG_CPU_ARM1026=y
# CONFIG_CPU_V6 is not set
CONFIG_CPU_32v5=y
CONFIG_CPU_ABRT_EV5T=y
CONFIG_CPU_ABRT_EV5TJ=y
CONFIG_CPU_CACHE_VIVT=y
CONFIG_CPU_COPY_V4WB=y
CONFIG_CPU_TLB_V4WBI=y
#
# Processor Features
#
CONFIG_ARM_THUMB=y
# CONFIG_CPU_ICACHE_DISABLE is not set
# CONFIG_CPU_DCACHE_DISABLE is not set
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
CONFIG_ICST525=y
#
# Bus support
#
CONFIG_ARM_AMBA=y
#
# PCCARD (PCMCIA/CardBus) support
#
# CONFIG_PCCARD is not set
#
# Kernel Features
#
# CONFIG_PREEMPT is not set
# CONFIG_NO_IDLE_HZ is not set
CONFIG_HZ=100
CONFIG_AEABI=y
CONFIG_OABI_COMPAT=y
# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not set
CONFIG_SPLIT_PTLOCK_CPUS=4096
CONFIG_LEDS=y
CONFIG_LEDS_TIMER=y
CONFIG_LEDS_CPU=y
CONFIG_ALIGNMENT_TRAP=y
#
# Boot options
#
CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0
CONFIG_CMDLINE=""
# CONFIG_XIP_KERNEL is not set
#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_DEBUG is not set
CONFIG_CPU_FREQ_STAT=y
# CONFIG_CPU_FREQ_STAT_DETAILS is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
CONFIG_CPU_FREQ_INTEGRATOR=y
#
# Floating point emulation
#
#
# At least one emulation must be selected
#
CONFIG_FPE_NWFPE=y
# CONFIG_FPE_NWFPE_XP is not set
# CONFIG_FPE_FASTFPE is not set
CONFIG_VFP=y
#
# Userspace binary formats
#
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not set
CONFIG_BINFMT_MISC=y
#
# Power management options
#
CONFIG_PM=y
CONFIG_PM_LEGACY=y
# CONFIG_PM_DEBUG is not set
CONFIG_APM=y
#
# Networking
#
CONFIG_NET=y
#
# Networking options
#
# CONFIG_NETDEBUG is not set
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_XFRM=y
# CONFIG_XFRM_USER is not set
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_FIB_HASH=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
# CONFIG_IP_PNP_RARP is not set
CONFIG_NET_IPIP=y
CONFIG_NET_IPGRE=y
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
CONFIG_ARPD=y
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y
CONFIG_INET_XFRM_TUNNEL=y
CONFIG_INET_TUNNEL=y
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
# CONFIG_TCP_CONG_ADVANCED is not set
CONFIG_TCP_CONG_BIC=y
# CONFIG_IPV6 is not set
# CONFIG_INET6_XFRM_TUNNEL is not set
# CONFIG_INET6_TUNNEL is not set
# CONFIG_NETFILTER is not set
#
# DCCP Configuration (EXPERIMENTAL)
#
# CONFIG_IP_DCCP is not set
#
# SCTP Configuration (EXPERIMENTAL)
#
# CONFIG_IP_SCTP is not set
#
# TIPC Configuration (EXPERIMENTAL)
#
# CONFIG_TIPC is not set
# CONFIG_ATM is not set
CONFIG_BRIDGE=y
CONFIG_VLAN_8021Q=y
# CONFIG_DECNET is not set
CONFIG_LLC=y
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set
#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_IEEE80211 is not set
#
# Device Drivers
#
#
# Generic Driver Options
#
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_FW_LOADER is not set
# CONFIG_DEBUG_DRIVER is not set
#
# Connector - unified userspace <-> kernelspace linker
#
CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
#
# Memory Technology Devices (MTD)
#
# CONFIG_MTD is not set
#
# Parallel port support
#
# CONFIG_PARPORT is not set
#
# Plug and Play support
#
#
# Block devices
#
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
CONFIG_BLK_DEV_NBD=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
#
# SCSI device support
#
# CONFIG_RAID_ATTRS is not set
# CONFIG_SCSI is not set
#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set
#
# Fusion MPT device support
#
# CONFIG_FUSION is not set
#
# IEEE 1394 (FireWire) support
#
#
# I2O device support
#
#
# Network device support
#
CONFIG_NETDEVICES=y
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
#
# PHY device support
#
# CONFIG_PHYLIB is not set
#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
CONFIG_SMC91X=y
# CONFIG_DM9000 is not set
#
# Ethernet (1000 Mbit)
#
#
# Ethernet (10000 Mbit)
#
#
# Token Ring devices
#
#
# Wireless LAN (non-hamradio)
#
# CONFIG_NET_RADIO is not set
#
# Wan interfaces
#
# CONFIG_WAN is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
#
# ISDN subsystem
#
# CONFIG_ISDN is not set
#
# Input device support
#
CONFIG_INPUT=y
#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_EVBUG is not set
#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_MISC=y
# CONFIG_INPUT_UINPUT is not set
#
# Hardware I/O ports
#
CONFIG_SERIO=y
# CONFIG_SERIO_SERPORT is not set
CONFIG_SERIO_AMBAKMI=y
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
# CONFIG_GAMEPORT is not set
#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_SERIAL_NONSTANDARD is not set
#
# Serial drivers
#
# CONFIG_SERIAL_8250 is not set
#
# Non-8250 serial port support
#
# CONFIG_SERIAL_AMBA_PL010 is not set
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set
#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
# CONFIG_NVRAM is not set
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
#
# Ftape, the floppy tape device driver
#
# CONFIG_RAW_DRIVER is not set
#
# TPM devices
#
# CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set
#
# I2C support
#
# CONFIG_I2C is not set
#
# SPI support
#
# CONFIG_SPI is not set
# CONFIG_SPI_MASTER is not set
#
# Dallas's 1-wire bus
#
# CONFIG_W1 is not set
#
# Hardware Monitoring support
#
# CONFIG_HWMON is not set
# CONFIG_HWMON_VID is not set
#
# Misc devices
#
#
# LED devices
#
# CONFIG_NEW_LEDS is not set
#
# LED drivers
#
#
# LED Triggers
#
#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set
#
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set
#
# Graphics support
#
CONFIG_FB=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_FIRMWARE_EDID is not set
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y
CONFIG_FB_ARMCLCD=y
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
#
# CONFIG_VGA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
#
# Logo configuration
#
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
#
# Sound
#
# CONFIG_SOUND is not set
#
# USB support
#
CONFIG_USB_ARCH_HAS_HCD=y
# CONFIG_USB_ARCH_HAS_OHCI is not set
# CONFIG_USB_ARCH_HAS_EHCI is not set
# CONFIG_USB is not set
#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
#
#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set
#
# MMC/SD Card support
#
CONFIG_MMC=y
# CONFIG_MMC_DEBUG is not set
CONFIG_MMC_BLOCK=y
CONFIG_MMC_ARMMMCI=y
#
# Real Time Clock
#
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
# CONFIG_RTC_HCTOSYS is not set
#
# RTC interfaces
#
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_PROC=y
CONFIG_RTC_INTF_DEV=y
#
# RTC drivers
#
# CONFIG_RTC_DRV_M48T86 is not set
# CONFIG_RTC_DRV_TEST is not set
#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
# CONFIG_EXT2_FS_XIP is not set
# CONFIG_EXT3_FS is not set
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
# CONFIG_FS_POSIX_ACL is not set
# CONFIG_XFS_FS is not set
# CONFIG_OCFS2_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_INOTIFY=y
# CONFIG_QUOTA is not set
CONFIG_DNOTIFY=y
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set
# CONFIG_FUSE_FS is not set
#
# CD-ROM/DVD Filesystems
#
# CONFIG_ISO9660_FS is not set
# CONFIG_UDF_FS is not set
#
# DOS/FAT/NT Filesystems
#
# CONFIG_MSDOS_FS is not set
# CONFIG_VFAT_FS is not set
# CONFIG_NTFS_FS is not set
#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y
# CONFIG_CONFIGFS_FS is not set
#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
CONFIG_CRAMFS=y
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
#
# Network File Systems
#
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
# CONFIG_NFS_V4 is not set
# CONFIG_NFS_DIRECTIO is not set
CONFIG_NFSD=y
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V3_ACL is not set
# CONFIG_NFSD_V4 is not set
# CONFIG_NFSD_TCP is not set
CONFIG_ROOT_NFS=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
# CONFIG_RPCSEC_GSS_KRB5 is not set
# CONFIG_RPCSEC_GSS_SPKM3 is not set
CONFIG_SMB_FS=y
# CONFIG_SMB_NLS_DEFAULT is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set
# CONFIG_9P_FS is not set
#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not set
# CONFIG_OSF_PARTITION is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_ATARI_PARTITION is not set
# CONFIG_MAC_PARTITION is not set
CONFIG_MSDOS_PARTITION=y
# CONFIG_BSD_DISKLABEL is not set
# CONFIG_MINIX_SUBPARTITION is not set
# CONFIG_SOLARIS_X86_PARTITION is not set
# CONFIG_UNIXWARE_DISKLABEL is not set
# CONFIG_LDM_PARTITION is not set
# CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not set
# CONFIG_SUN_PARTITION is not set
# CONFIG_KARMA_PARTITION is not set
# CONFIG_EFI_PARTITION is not set
#
# Native Language Support
#
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
# CONFIG_NLS_CODEPAGE_437 is not set
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
# CONFIG_NLS_CODEPAGE_850 is not set
# CONFIG_NLS_CODEPAGE_852 is not set
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_936 is not set
# CONFIG_NLS_CODEPAGE_950 is not set
# CONFIG_NLS_CODEPAGE_932 is not set
# CONFIG_NLS_CODEPAGE_949 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
# CONFIG_NLS_ISO8859_8 is not set
# CONFIG_NLS_CODEPAGE_1250 is not set
# CONFIG_NLS_CODEPAGE_1251 is not set
# CONFIG_NLS_ASCII is not set
# CONFIG_NLS_ISO8859_1 is not set
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
# CONFIG_NLS_UTF8 is not set
#
# Profiling support
#
# CONFIG_PROFILING is not set
#
# Kernel hacking
#
# CONFIG_PRINTK_TIME is not set
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_KERNEL=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_SCHEDSTATS is not set
# CONFIG_DEBUG_SLAB is not set
CONFIG_DEBUG_MUTEXES=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_FS is not set
# CONFIG_DEBUG_VM is not set
CONFIG_FRAME_POINTER=y
# CONFIG_UNWIND_INFO is not set
CONFIG_FORCED_INLINING=y
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_DEBUG_USER is not set
# CONFIG_DEBUG_WAITQ is not set
CONFIG_DEBUG_ERRORS=y
# CONFIG_DEBUG_LL is not set
#
# Security options
#
# CONFIG_KEYS is not set
# CONFIG_SECURITY is not set
#
# Cryptographic options
#
CONFIG_CRYPTO=y
CONFIG_CRYPTO_HMAC=y
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_MD4 is not set
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_SHA512 is not set
# CONFIG_CRYPTO_WP512 is not set
# CONFIG_CRYPTO_TGR192 is not set
CONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_TWOFISH is not set
# CONFIG_CRYPTO_SERPENT is not set
# CONFIG_CRYPTO_AES is not set
# CONFIG_CRYPTO_CAST5 is not set
# CONFIG_CRYPTO_CAST6 is not set
# CONFIG_CRYPTO_TEA is not set
# CONFIG_CRYPTO_ARC4 is not set
# CONFIG_CRYPTO_KHAZAD is not set
# CONFIG_CRYPTO_ANUBIS is not set
CONFIG_CRYPTO_DEFLATE=y
# CONFIG_CRYPTO_MICHAEL_MIC is not set
# CONFIG_CRYPTO_CRC32C is not set
# CONFIG_CRYPTO_TEST is not set
#
# Hardware crypto devices
#
#
# Library routines
#
# CONFIG_CRC_CCITT is not set
# CONFIG_CRC16 is not set
CONFIG_CRC32=y
# CONFIG_LIBCRC32C is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y

View file

@ -1,42 +0,0 @@
# Maintainer: Krzysztof "hiciu" Warzecha <kwarzecha7@gmail.com>
pkgname=kernel26
pkgver=2.6.29
_gitver=f19f259d3c1afde8eae53983fd19f61831927413
groups=('base' 'small-base')
pkgrel=4
pkgdesc="The Linux Kernel and modules"
arch=(arm)
license=('GPL2')
url="http://wiki.openmoko.org/wiki/Kernel"
depends=('coreutils')
makedepends=('git' 'uboot-mkimage-native')
source=('build' 'append-GTA02')
md5sums=('6a8b9286ac61ba7d4593da23ca21cf0e'
'ad1cb2f0a3000f5285c58b22fe8f4de3')
build() {
cd ${srcdir}
# make this build clean
if [ -x linux-2.6 ]; then
cd linux-2.6
git reset --hard ORIG_HEAD
else
git clone git://git.openmoko.org/git/kernel.git linux-2.6
cd linux-2.6
git checkout --track -b andy-tracking origin/andy-tracking
fi
git checkout ${_gitver}
rm -rf GTA02
mkdir GTA02
cp ./arch/arm/configs/gta02_moredrivers_defconfig GTA02/.config
sh ${srcdir}/build GTA02 with_modules
mkdir -p ${pkgdir}/boot
cp -a GTA02/staging/lib ${pkgdir}
cp GTA02/uImage-moredrivers-*.bin ${pkgdir}/boot
cd ${pkgdir}/boot
ln -s uImage-moredrivers-*.bin uImage-GTA02.bin
cp ${srcdir}/append-GTA02 ${pkgdir}/boot
}

View file

@ -1 +0,0 @@
console=tty0

View file

@ -1,116 +0,0 @@
#!/bin/sh
#
# Kernel building helper script (C)2008 Openmoko, Inc
# Andy Green <andy@openmoko.org>
#
# Licensed under GPLv3 or later
#
#
# you need to run this from the top level source dir, but it creates all
# object files into a subdir given in the first argument, eg
#
# ./build GTA02
#
# this radically speeds up swapping between build contexts. Note the config
# for each build lives in the subdir.
PARALLEL=16
if [ -z "$1" ] ; then
echo "Specify the build subdir, eg, GTA02 which contains the .config"
echo "and will hold the object files"
exit 1
fi
mkdir -p $1
#export CROSS_COMPILE=/usr/local/openmoko/arm/bin/arm-angstrom-linux-gnueabi-
make O=$1 ARCH=arm silentoldconfig
#
# figure out what we are building
#
PRODUCT=
if [ ! -z "`grep CONFIG_MACH_NEO1973_GTA01=y $1/.config`" ] ; then
START=30008000
PRODUCT=GTA01
fi
if [ ! -z "`grep CONFIG_MACH_NEO1973_GTA02=y $1/.config`" ] ; then
START=30008000
PRODUCT=GTA02
fi
if [ ! -z "`grep CONFIG_MACH_OPENMOKO_GTA03=y $1/.config`" ] ; then
START=50008000
PRODUCT=GTA03
fi
if [ ! -z "`grep CONFIG_MACH_SMDK6410=y $1/.config`" ] ; then
START=50008000
PRODUCT=SMDK6410
fi
if [ ! -z "`grep CONFIG_MACH_M800=y $1/.config`" ] ; then
START=30008000
PRODUCT=M800
fi
if [ -z "$PRODUCT" ] ; then
echo "Unable to figure out what we are building from the config"
exit 1
fi
#
# get the branch and head hash for the version we are building to
# allow source tracability
#
VERSION=
if [ -d .git ] ; then
HEAD=`git show --pretty=oneline | head -n1 | cut -d' ' -f1 | cut -b1-16`
BRANCH=andy-tracking
VERSION=-$PRODUCT\_$BRANCH
fi
echo $MKIMAGECMD
#
# actually make it
#
echo make -j$PARALLEL O=$1 ARCH=arm CONFIG_DEBUG_SECTION_MISMATCH=y EXTRAVERSION=$VERSION;
if make -j$PARALLEL O=$1 ARCH=arm CONFIG_DEBUG_SECTION_MISMATCH=y EXTRAVERSION=$VERSION; then
#
# if the build is happy, postprocess it by strip and with U-Boot header wrapper
# you can get mkimage from U-Boot or Qi build
#
${CROSS_COMPILE}objcopy -O binary -R .note -R .comment -S $1/arch/arm/boot/compressed/vmlinux $1/linux.bin
mkimage -A arm -O linux -T kernel -C none -a $START -e $START -n "OM $PRODUCT $BRANCH""_$HEAD" -d $1/linux.bin $1/uImage-$PRODUCT.bin
# we can see if it is an "moredrivers" build by looking for USB Eth gadget
# if it is then keep a stamped copy of last build
if [ ! -z "`grep CONFIG_USB_USBNET=y $1/.config`" ] ; then
rm -f $1/uImage-moredrivers-$PRODUCT*.bin $1/modules-$PRODUCT*.tar.gz
cp $1/uImage-$PRODUCT.bin $1/uImage-moredrivers$VERSION-$HEAD.bin
rm -rf $1/staging
mkdir -p $1/staging
if [ ! -z "$2" ] ; then
make O=$1 ARCH=arm modules_install INSTALL_MOD_PATH=staging
cd $1/staging
tar czf ../modules$VERSION-$HEAD.tar.gz .
cd ../..
fi
fi
exit 0
else
exit 1
fi

View file

@ -1,23 +0,0 @@
# $Id: PKGBUILD 41787 2009-06-07 11:37:55Z thomas $
# Maintainer: Aaron Griffin <aaron@archlinux.org>
pkgname=klibc-extras
pkgver=2.5
pkgrel=4
pkgdesc="Extra apps for klibc early-userspace"
arch=(arm)
url="http://projects.archlinux.org/?p=klibc-extras.git"
license=('GPL')
groups=('base')
depends=('klibc' $(basename /lib/klibc-*.so .so))
source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.bz2)
md5sums=('edd16b1a558164db0107c7319a21f0d4')
build()
{
cd $srcdir/${pkgname}-${pkgver}
make || return 1
make DESTDIR=$pkgdir install || return 1
rm -f ${pkgdir}/usr/lib/klibc/bin/mknod
}

View file

@ -1,48 +0,0 @@
# $Id: PKGBUILD 41787 2009-06-07 11:37:55Z thomas $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=klibc-kbd
pkgver=1.15.20080312
pkgrel=10
pkgdesc="Keytable files and keyboard utilities"
arch=(arm)
url="ftp://ftp.altlinux.org/pub/people/legion/kbd/"
license=('GPL')
groups=('base')
depends=('klibc' $(basename /lib/klibc-*.so .so) 'kbd')
source=(ftp://ftp.archlinux.org/other/kbd/kbd-$pkgver.tar.gz
#ftp://ftp.altlinux.org/pub/people/legion/kbd/kbd-${pkgver}.tar.gz
no-isatty.patch
no-exit.patch
no-fflush.patch
keymap_install
keymap_hook)
md5sums=('709b087bb9d6c073bade70eda2da7770'
'53e9612ac5fc1b23601f793410742ed3'
'8c1bec330e8c98355502ac861561667d'
'8310d1a6cc72b5827898d0e9e29824ab'
'735d7268f567deee4db3bed951a8303a'
'85457e44dfd7046224e87f0add8da4b2')
build() {
cd ${srcdir}
#cd ${srcdir}/kbd-${pkgver}
patch -Np1 -i no-isatty.patch || return 1
patch -Np1 -i no-exit.patch || return 1
patch -Np1 -i no-fflush.patch || return 1
aclocal
autoconf
automake --add-missing
./configure --datadir=/share/kbd --enable-klibc
cd src/
make kbd_mode loadkeys setfont || return 1
install -D loadkeys ${pkgdir}/lib/initcpio/kbd/loadkeys
install -D kbd_mode ${pkgdir}/lib/initcpio/kbd/kbd_mode
install -D setfont ${pkgdir}/lib/initcpio/kbd/setfont
# install hook
install -Dm644 ${srcdir}/keymap_hook ${pkgdir}/lib/initcpio/hooks/keymap
install -Dm644 ${srcdir}/keymap_install ${pkgdir}/lib/initcpio/install/keymap
}

View file

@ -1,27 +0,0 @@
# vim: set ft=sh:
run_hook ()
{
msg -n ":: Loading keymap..."
. /keymap
if [ "${UTF8}" = "yes" ]; then
/bin/kbd_mode -u
printf "\033%%G" >> /dev/console
[ -n "${KEYMAP}" ] && /bin/loadkeys -q -u ${KEYMAP}
else
/bin/kbd_mode -a
printf "\033%%@" >> /dev/console
[ -n "${KEYMAP}" ] && /bin/loadkeys -q ${KEYMAP}
fi
if [ -n "${CONSOLEFONT}" ]; then
if [ "${UTF8}" = "yes" ]; then
CONSOLEMAP=""
fi
if [ -n "${CONSOLEMAP}" ]; then
/bin/setfont -m ${CONSOLEMAP} ${CONSOLEFONT} -C /dev/console
else
/bin/setfont ${CONSOLEFONT} -C /dev/console
fi
printf "\033(K" >> /dev/console
fi
msg "done."
}

View file

@ -1,76 +0,0 @@
# vim: set ft=sh:
# this is needed because kbd utilities compiled with klibc cannot use gunzip
add_ucfile ()
{
temp=$(mktemp ${TMPDIR}/kbd.XXXX)
dest=$(echo "${1}" | sed 's|/usr||' | sed 's|.gz||')
name=$(echo "${1}" | sed 's|.*/||')
if [ $(echo "${1}" | grep '.gz$') ]; then
gunzip -c ${1} > ${temp}
add_file ${temp} ${dest}
else
add_file ${1} ${dest}
fi
}
add_includes()
{
for i in $(zgrep -e '^include ".*"' ${1} | cut -d '"' -f 2); do
for j in $(find /usr/share/kbd/keymaps -name "${i}" -o -name "${i}.*"); do
add_ucfile ${j}
add_includes ${j}
done
done
}
install ()
{
MODULES=""
BINARIES=""
FILES=""
SCRIPT="keymap"
KEYMAP_FILE="$(mktemp ${TMPDIR}/keymap.XXXXXX)"
add_file /lib/initcpio/kbd/loadkeys /bin/loadkeys
add_file /lib/initcpio/kbd/kbd_mode /bin/kbd_mode
add_file /lib/initcpio/kbd/setfont /bin/setfont
eval "$(grep -e "^LOCALE=" -e "^KEYMAP=" -e "^CONSOLEFONT=" -e "^CONSOLEMAP=" /etc/rc.conf)"
echo "KEYMAP='${KEYMAP}'" >> ${KEYMAP_FILE}
echo "CONSOLEFONT='${CONSOLEFONT}'" >> ${KEYMAP_FILE}
echo "CONSOLEMAP='${CONSOLEMAP}'" >> ${KEYMAP_FILE}
if [ -n "$(echo ${LOCALE} | grep -i utf)" ]; then
echo "UTF8='yes'" >> ${KEYMAP_FILE}
fi
. ${KEYMAP_FILE}
add_file ${KEYMAP_FILE} /keymap
if [ -n "${KEYMAP}" ]; then
for i in $(echo ${KEYMAP}); do
for j in $(find /usr/share/kbd/keymaps -name "${i}.map.gz"); do
add_ucfile ${j}
add_includes ${j}
done
done
fi
if [ -n "${CONSOLEFONT}" ]; then
for i in $(find /usr/share/kbd/consolefonts -name "${CONSOLEFONT}.*gz"); do
add_ucfile ${i}
done
fi
if [ -n "${CONSOLEMAP}" ]; then
for i in $(find /usr/share/kbd/unimaps -name "${CONSOLEMAP}.uni"); do
add_ucfile ${i}
done
for i in $(find /usr/share/kbd/consoletrans -name "${CONSOLEMAP}.trans" -o -name "${CONSOLEMAP}"); do
add_ucfile ${i}
done
fi
}
help ()
{
cat<<HELPEOF
This hook loads keymap(s) and consolefont specified in rc.conf
during early userspace.
HELPEOF
}

View file

@ -1,31 +0,0 @@
From 96dc0b9e56da64d2c063d1e74c81034b6b404bc2 Mon Sep 17 00:00:00 2001
From: Roman Kyrylych <roman@archlinux.org>
Date: Sat, 15 Mar 2008 21:46:35 +0200
Subject: [PATCH] Do not exit on ferror during psf font loading when built with klibc
Signed-off-by: Roman Kyrylych <roman@archlinux.org>
---
src/psffontop.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/src/psffontop.c b/src/psffontop.c
index 1b99e9b..75a6048 100644
--- a/src/psffontop.c
+++ b/src/psffontop.c
@@ -203,9 +203,13 @@ readpsffont(FILE *fontf, char **allbufp, int *allszp,
}
n += fread(inputbuf+n, 1, inputbuflth-n, fontf);
if (ferror(fontf)) {
+ #ifndef __klibc__
char *u = _("%s: Error reading input font");
fprintf(stderr, u, progname);
exit(EX_DATAERR);
+ #else
+ break;
+ #endif
}
if (feof(fontf))
break;
--
1.5.3.7

View file

@ -1,14 +0,0 @@
diff -Nur src.orig/src/klibc_compat.c src/src/klibc_compat.c
--- src.orig/src/klibc_compat.c 2008-03-12 01:56:14.000000000 +0100
+++ src/src/klibc_compat.c 2008-09-15 18:59:31.000000000 +0200
@@ -18,10 +18,6 @@
return (errno != 0 && errno != EOF);
}
-int fflush(FILE *stream) {
- return 0;
-}
-
int ungetc(int c, FILE *stream) {
if (fseek(stream, -1, SEEK_CUR) < 0)
return EOF;

View file

@ -1,58 +0,0 @@
From 92dc27dd57c83e9e2c798bda41ec111d26e1e3e2 Mon Sep 17 00:00:00 2001
From: Roman Kyrylych <roman@archlinux.org>
Date: Sat, 15 Mar 2008 18:57:04 +0200
Subject: [PATCH] Do not use isatty() when built with klibc
Signed-off-by: Roman Kyrylych <roman@archlinux.org>
---
src/getfd.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/src/getfd.c b/src/getfd.c
index 7f6d70e..3cef522 100644
--- a/src/getfd.c
+++ b/src/getfd.c
@@ -16,6 +16,7 @@
* if someone else used X (which does a chown on /dev/console).
*/
+#ifndef __klibc__
static int
is_a_console(int fd) {
char arg;
@@ -25,6 +26,7 @@ is_a_console(int fd) {
&& ioctl(fd, KDGKBTYPE, &arg) == 0
&& ((arg == KB_101) || (arg == KB_84)));
}
+#endif
static int
open_a_console(const char *fnam) {
@@ -41,10 +43,12 @@ open_a_console(const char *fnam) {
fd = open(fnam, O_RDONLY);
if (fd < 0)
return -1;
+ #ifndef __klibc__
if (!is_a_console(fd)) {
close(fd);
return -1;
}
+ #endif
return fd;
}
@@ -80,9 +84,11 @@ int getfd(const char *fnam) {
if (fd >= 0)
return fd;
+ #ifndef __klibc__
for (fd = 0; fd < 3; fd++)
if (is_a_console(fd))
return fd;
+ #endif
fprintf(stderr,
_("Couldnt get a file descriptor referring to the console\n"));
--
1.5.3.7

View file

@ -1,25 +0,0 @@
# $Id: PKGBUILD 41787 2009-06-07 11:37:55Z thomas $
# Maintainer: Thomas Baechler <thomas@archlinux.org>
pkgname=klibc-module-init-tools
pkgver=3.8
pkgrel=1
pkgdesc="Utilities for inserting and removing modules from the Linux kernel"
arch=(arm)
url="http://www.kernel.org"
license=('GPL')
groups=('base')
depends=('klibc' $(basename /lib/klibc-*.so .so))
source=(http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-$pkgver.tar.bz2)
md5sums=('470d7830fd263d29a92149da6ae9f122')
build() {
cd $srcdir/module-init-tools-$pkgver
CFLAGS="-DCONFIG_NO_BACKWARDS_COMPAT" CC=klcc LD=klcc ./configure --prefix=/usr/lib/klibc
# klibc lacks getc_unlocked, so use getc instead
sed 's|getc_unlocked|getc|g' -i *.c
make || return 1
INSTALL=/bin/install make DESTDIR=$pkgdir install || return 1
rm -f $pkgdir/usr/lib/klibc/sbin/{generate-modprobe.conf,insmod.static}
rm -rf $pkgdir/usr/lib/klibc/{share,man}
}

View file

@ -1,5 +0,0 @@
# firmware class requests
SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh"
# do not delete static device nodes
ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove"

View file

@ -1,50 +0,0 @@
# do not edit this file, it will be overwritten on update
# persistent storage links: /dev/disk/{by-id,by-uuid,by-label,by-path}
# scheme based on "Linux persistent device names", 2004, Hannes Reinecke <hare@suse.de>
# forward scsi device event to corresponding block device
ACTION=="change", SUBSYSTEM=="scsi", ENV{DEVTYPE}=="scsi_device", TEST=="block", ATTR{block/*/uevent}="change"
ACTION!="add|change", GOTO="persistent_storage_end"
SUBSYSTEM!="block", GOTO="persistent_storage_end"
# skip rules for inappropriate block devices
KERNEL=="fd*|mtd*|nbd*|gnbd*|md*|btibm*", GOTO="persistent_storage_end"
# never access non-cdrom removable ide devices, the drivers are causing event loops on open()
KERNEL=="hd*[!0-9]", ATTR{removable}=="1", SUBSYSTEMS=="ide", ATTRS{media}=="disk|floppy", GOTO="persistent_storage_end"
KERNEL=="hd*[0-9]", ATTRS{removable}=="1", GOTO="persistent_storage_end"
# ignore partitions that span the entire disk
TEST=="whole_disk", GOTO="persistent_storage_end"
# /sys/class/block will export this
ENV{DEVTYPE}!="?*", ATTR{range}=="?*", ENV{DEVTYPE}="disk"
ENV{DEVTYPE}!="?*", ATTR{start}=="?*", ENV{DEVTYPE}="partition"
# for partitions import parent information
ENV{DEVTYPE}=="partition", IMPORT{parent}="ID_*"
# by-path (parent device path)
ENV{DEVTYPE}=="disk", IMPORT{program}="path_id %p"
ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}"
ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-part%n"
# skip unpartitioned removable media devices from drivers which do not send "change" events
ENV{DEVTYPE}=="disk", KERNEL!="sd*|sr*", ATTR{removable}=="1", GOTO="persistent_storage_end"
# probe filesystem metadata of optical drives which have a media inserted
KERNEL=="sr*", ENV{ID_CDROM_MEDIA_TRACK_COUNT}=="?*", IMPORT{program}="vol_id --export --skip-raid --offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET} $tempnode"
# probe filesystem metadata of disks
KERNEL!="sr*", IMPORT{program}="vol_id --export $tempnode"
# watch for future changes
KERNEL!="sr*", OPTIONS+="watch"
# by-label/by-uuid links (filesystem metadata)
ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
LABEL="persistent_storage_end"

View file

@ -1,4 +0,0 @@
# do not edit this file, it will be overwritten on update
KERNEL=="device-mapper", NAME="mapper/control"

View file

@ -1,23 +0,0 @@
# do not edit this file, it will be overwritten on update
SUBSYSTEM!="block", GOTO="md_end"
ACTION!="add|change", GOTO="md_end"
# import data from a raid member and activate it
#ENV{ID_FS_TYPE}=="linux_raid_member", IMPORT{program}="/sbin/mdadm --examine --export $tempnode", RUN+="/sbin/mdadm --incremental $env{DEVNAME}"
# import data from a raid set
KERNEL!="md*", GOTO="md_end"
# container devices have a metadata version of e.g. 'external:ddf' and
# never leave state 'inactive'
ATTR{md/metadata_version}=="external:[A-Za-z]*", ATTR{md/array_state}=="inactive", GOTO="md_ignore_state"
TEST!="md/array_state", GOTO="md_end"
ATTR{md/array_state}=="|clear|inactive", GOTO="md_end"
LABEL="md_ignore_state"
IMPORT{program}="vol_id --export $tempnode"
OPTIONS+="link_priority=100"
OPTIONS+="watch"
ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
LABEL="md_end"

View file

@ -1,7 +0,0 @@
# do not edit this file, it will be overwritten on update
ACTION!="add", GOTO="drivers_end"
DRIVER!="?*", ENV{MODALIAS}=="?*", RUN{ignore_error}+="/lib/udev/load-modules.sh $env{MODALIAS}"
LABEL="drivers_end"

View file

@ -1,60 +0,0 @@
# $Id: PKGBUILD 41787 2009-06-07 11:37:55Z thomas $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=klibc-udev
pkgver=141
pkgrel=1
pkgdesc="udev compiled for klibc"
arch=(arm)
url="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html"
groups=('base')
depends=('coreutils' 'klibc' $(basename /lib/klibc-*.so .so))
license=('GPL')
source=(http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-$pkgver.tar.bz2
udev-fix-klibc-build.patch
disable-uid-gid-lookup.patch
udev_hook
udev_install
50-udev-default.rules
60-persistent-storage.rules
64-device-mapper.rules
64-md-raid.rules
80-drivers.rules
load-modules.sh)
md5sums=('1670fe81cabf5161319c52084cf81134'
'c769a0440fc90ba0fee7a2ae2bf7d76f'
'89acd170a2771f81ca9e4b7920820555'
'042fd2ba6a0351bbae30da33ff492c03'
'a3d81917e2bbe66f6c24486a86d4dc9c'
'f9095dbad80fc93bcde60d7fe4572022'
'a867d20f660aec148d9b735b209696a1'
'258fea1c2b024f9755f905a21bd45a01'
'e8654c58b83cb4eabf6a1c84b7410d78'
'd42740d13b6bb5c5d90bfc2062019f58'
'5dd248da5d5fa3adfbe87309807ab734')
build() {
cd ${srcdir}/udev-$pkgver
patch -p1 -i ../udev-fix-klibc-build.patch || return 1
# uid/gid lookup fails to build on klibc due to incomplete headers
# we don't use this feature in klibc, simply omit it
patch -p1 -i ../disable-uid-gid-lookup.patch || return 1
CC=klcc LD=klcc ./configure --prefix=""
make || return 1
mkdir -p ${pkgdir}/lib/initcpio/udev
install -m755 udev/udevd ${pkgdir}/lib/initcpio/udev/ || return 1
install -m755 udev/udevadm ${pkgdir}/lib/initcpio/udev/ || return 1
install -m755 extras/path_id/path_id ${pkgdir}/lib/initcpio/udev/ || return 1
install -m755 extras/volume_id/vol_id ${pkgdir}/lib/initcpio/udev/ || return 1
install -m755 extras/firmware/firmware.sh ${pkgdir}/lib/initcpio/udev/ || return 1
for rules in 50-udev-default.rules 60-persistent-storage.rules 64-device-mapper.rules 64-md-raid.rules 80-drivers.rules; do
install -m644 ${srcdir}/${rules} ${pkgdir}/lib/initcpio/udev/ || return 1
done
install -m755 ${srcdir}/load-modules.sh ${pkgdir}/lib/initcpio/udev/ || return 1
install -D -m644 ${srcdir}/udev_install ${pkgdir}/lib/initcpio/install/udev || return 1
install -D -m644 ${srcdir}/udev_hook ${pkgdir}/lib/initcpio/hooks/udev || return 1
}

View file

@ -1,33 +0,0 @@
diff -Nur udev-132.orig/udev/udev-util.c udev-132/udev/udev-util.c
--- udev-132.orig/udev/udev-util.c 2008-11-06 02:56:15.000000000 +0100
+++ udev-132/udev/udev-util.c 2008-11-09 18:28:30.000000000 +0100
@@ -126,6 +126,7 @@
uid_t util_lookup_user(struct udev *udev, const char *user)
{
+ /*
char *endptr;
int buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
char buf[buflen];
@@ -147,11 +148,13 @@
err(udev, "specified user '%s' unknown\n", user);
else
err(udev, "error resolving user '%s': %m\n", user);
+ */
return 0;
}
extern gid_t util_lookup_group(struct udev *udev, const char *group)
{
+ /*
char *endptr;
int buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
char buf[buflen];
@@ -173,6 +176,7 @@
err(udev, "specified group '%s' unknown\n", group);
else
err(udev, "error resolving group '%s': %m\n", group);
+ */
return 0;
}

View file

@ -1,51 +0,0 @@
#! /bin/sh
# Implement blacklisting for udev-loaded modules
# Includes module checking
# - Aaron Griffin & Tobias Powalowski for Archlinux
[ $# -ne 1 ] && exit 1
MODPROBE="/sbin/modprobe"
RESOLVEALIAS="/bin/resolve-modalias"
USEBLACKLIST="--use-blacklist"
REPLACE="/bin/replace"
MODDEPS="/bin/moddeps"
if [ -f /proc/cmdline ]; then
for cmd in $(cat /proc/cmdline); do
case $cmd in
disablemodules=*) eval $cmd ;;
load_modules=off) exit ;;
esac
done
#parse cmdline entries of the form "disablemodules=x,y,z"
if [ -n "${disablemodules}" ]; then
BLACKLIST="$(${REPLACE} ${disablemodules} ',')"
fi
fi
# sanitize the module names
BLACKLIST="$(${REPLACE} "${BLACKLIST}" '-' '_')"
if [ -n "${BLACKLIST}" ] ; then
# Try to find all modules for the alias
mods="$($RESOLVEALIAS /lib/modules/$(uname -r)/modules.alias $1)"
# If no modules could be found, try if the alias name is a module name
# In that case, omit the --use-blacklist parameter to imitate normal modprobe behaviour
[ -z "${mods}" ] && $MODPROBE -qni $1 && mods="$1" && USEBLACKLIST=""
[ -z "${mods}" ] && exit
for mod in ${mods}; do
deps="$(${MODDEPS} ${mod})"
[ $? -ne 0 ] && continue
# If the module or any of its dependencies is blacklisted, don't load it
for dep in $deps; do
for blackmod in ${BLACKLIST}; do
[ "${blackmod}" = "${dep}" ] && continue 3
done
done
$MODPROBE $USEBLACKLIST ${mod}
done
else
$MODPROBE $1
fi
# vim: set et ts=4:

View file

@ -1,48 +0,0 @@
diff -Nur udev-128.orig/extras/Makefile.in udev-128/extras/Makefile.in
--- udev-128.orig/extras/Makefile.in 2008-09-11 16:58:01.000000000 +0200
+++ udev-128/extras/Makefile.in 2008-09-18 12:03:09.000000000 +0200
@@ -176,15 +176,11 @@
udev_prefix = @udev_prefix@
SUBDIRS = \
ata_id \
- cdrom_id \
edd_id \
path_id \
firmware \
- collect \
floppy \
- fstab_import \
rule_generator \
- scsi_id \
usb_id \
volume_id
diff -Nur udev-128.orig/extras/volume_id/lib/libvolume_id-private.h udev-128/extras/volume_id/lib/libvolume_id-private.h
--- udev-128.orig/extras/volume_id/lib/libvolume_id-private.h 2008-09-10 02:37:09.000000000 +0200
+++ udev-128/extras/volume_id/lib/libvolume_id-private.h 2008-09-18 12:07:57.000000000 +0200
@@ -35,12 +35,8 @@
log_null(const char *format, ...) {}
#define err(format, arg...) volume_id_log_fn(LOG_ERR, __FILE__, __LINE__, format, ##arg)
-#define info(format, arg...) volume_id_log_fn(LOG_INFO, __FILE__, __LINE__, format, ##arg)
-#ifdef DEBUG
-#define dbg(format, arg...) volume_id_log_fn(LOG_DEBUG, __FILE__, __LINE__, format, ##arg)
-#else
+#define info(format, arg...) log_null(format, ##arg)
#define dbg(format, arg...) log_null(format, ##arg)
-#endif
#if (__BYTE_ORDER == __LITTLE_ENDIAN)
#define le16_to_cpu(x) (x)
diff -Nur udev-128.orig/extras/volume_id/lib/md5.c udev-128/extras/volume_id/lib/md5.c
--- udev-128.orig/extras/volume_id/lib/md5.c 2008-09-10 02:18:59.000000000 +0200
+++ udev-128/extras/volume_id/lib/md5.c 2008-09-18 12:03:09.000000000 +0200
@@ -21,7 +21,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <stdint.h>
+/*#include <stdint.h>*/
#include <string.h>
#include <endian.h>
#include <byteswap.h>

View file

@ -1,10 +0,0 @@
# vim: set ft=sh:
run_hook ()
{
msg -n ":: Loading udev..."
echo > /proc/sys/kernel/hotplug
/sbin/udevd --daemon
/sbin/udevadm trigger
/sbin/udevadm settle
msg "done."
}

View file

@ -1,29 +0,0 @@
# vim:set ft=sh:
install ()
{
MODULES=""
BINARIES=""
FILES=" /etc/udev/udev.conf"
SCRIPT="udev"
add_file /lib/initcpio/udev/udevd /sbin/udevd
add_file /lib/initcpio/udev/udevadm /sbin/udevadm
add_file /lib/initcpio/udev/50-udev-default.rules /lib/udev/rules.d/50-udev-default.rules
add_file /lib/initcpio/udev/60-persistent-storage.rules /lib/udev/rules.d/60-persistent-storage.rules
add_file /lib/initcpio/udev/64-device-mapper.rules /lib/udev/rules.d/64-device-mapper.rules
add_file /lib/initcpio/udev/64-md-raid.rules /lib/udev/rules.d/64-md-raid.rules
add_file /lib/initcpio/udev/80-drivers.rules /lib/udev/rules.d/80-drivers.rules
add_file /lib/initcpio/udev/firmware.sh /lib/udev/firmware.sh
add_file /lib/initcpio/udev/path_id /lib/udev/path_id
add_file /lib/initcpio/udev/vol_id /lib/udev/vol_id
add_file /lib/initcpio/udev/load-modules.sh /lib/udev/load-modules.sh
}
help ()
{
cat <<HELPEOF
This hook will use udev to create your root device node
and detect the needed modules for your root device.
It is recommended to use this hook instead of modload.
HELPEOF
}

View file

@ -1,69 +0,0 @@
# $Id: PKGBUILD 41787 2009-06-07 11:37:55Z thomas $
# Maintainer: Aaron Griffin <aaron@archlinux.org>
# Maintainer: Thomas Baechler <thomas@archlinux.org>
# arm Maintainer: Philipp Scholl <pscholl@bawue.de>
###
### NOTE: Do not build this package with anything except gcc - using ccache
### forces others to use it as well as it becomes hardcoded in the klibc
### script.
###
pkgname=klibc
pkgver=1.5.15
_klibcbranch=Testing #Stable/Testing
_kver=2.6.29-ARCH
pkgrel=3
pkgdesc="A minimal libc made for early-userspace"
arch=(arm)
url="http://www.kernel.org/pub/linux/libs/klibc/"
license=('BSD')
groups=('base')
options=(!ccache !strip)
source=(http://www.kernel.org/pub/linux/libs/klibc/${_klibcbranch}/${pkgname}-${pkgver}.tar.gz
klibc-compile-shared-by-default.patch
klibc-Kbuild.patch
klibc-x86_64-fix-io.h.patch
klibc-fix-2.6.28-includes.patch
klibc-our-arm-MCONFIG.patch
klibc-config-eabi.patch
kinit-fix-init-cmdline.patch)
md5sums=('b5527be46f24779884557b11888c8075'
'c263a7c3fd290fcc84a4e230d456d022'
'ff5b113024256de31af59c2f1a966516'
'fcee75cfaa65638b07f9cc4a7719fa29'
'cee3acb556fe7178e684440f9355545e'
'e4706011e92f6dee84cd89b05ae8302c'
'6e47948a0247cc73ede2b0c89d69c12d'
'70f306bcb91b39c9be27d99593d4dcae')
build()
{
cd $srcdir/$pkgname-$pkgver
#INI_DEBUG causes ipconfig to fail within kinit
sed -i "/#define INI_DEBUG/d" usr/kinit/kinit.h || return 1
ln -sf /usr/src/linux-${_kver} linux
# compile binaries shared by default
patch -p1 -i ../klibc-compile-shared-by-default.patch || return 1
# don't build gzip, cpio, kill, build shared binaries for kinit and sh
patch -p1 -i ../klibc-Kbuild.patch || return 1
# fix errors in io.h header
patch -p1 -i ../klibc-x86_64-fix-io.h.patch || return 1
# fix includes for 2.6.28 build
patch -p1 -i ../klibc-fix-2.6.28-includes.patch || return 1
# fix arm MCONFIG variables
patch -p1 -i ../klibc-our-arm-MCONFIG.patch || return 1
# fix to use EABI on arm
patch -p1 -i ../klibc-config-eabi.patch || return 1
# fix the commandline of the init program
patch -p1 -i ../kinit-fix-init-cmdline.patch || return 1
make V=1 EXTRA_KLIBCFLAGS='' || return 1
make INSTALLROOT=$pkgdir mandir=/usr/share/man install || return 1
cp -a linux/arch/arm/include/asm/* $pkgdir/usr/lib/klibc/include/asm/
provides[${#provides[@]}]="$(basename $pkgdir/lib/klibc-*.so .so)"
export provides
}

View file

@ -1,29 +0,0 @@
diff -Nur klibc-1.5.15.orig/usr/kinit/kinit.c klibc-1.5.15/usr/kinit/kinit.c
--- klibc-1.5.15.orig/usr/kinit/kinit.c 2009-01-04 20:28:03.000000000 +0100
+++ klibc-1.5.15/usr/kinit/kinit.c 2009-06-07 12:55:38.643000948 +0200
@@ -191,7 +191,6 @@
/* This is the argc and argv we pass to init */
const char *init_path;
-int init_argc;
char **init_argv;
extern ssize_t readfile(const char *, char **);
@@ -211,7 +210,6 @@
srand48(now.tv_usec ^ (now.tv_sec << 24));
/* Default parameters for anything init-like we execute */
- init_argc = argc;
init_argv = alloca((argc+1)*sizeof(char *));
memcpy(init_argv, argv, (argc+1)*sizeof(char *));
@@ -258,7 +256,8 @@
/* Find an -- argument, and if so append to the command line */
for (i = 1; i < argc; i++) {
if (!strcmp(argv[i], "--")) {
- i++;
+ /* The -- marks the end of init's command line */
+ init_argv[i++] = NULL;
break;
}
}

View file

@ -1,80 +0,0 @@
diff -Nur klibc-1.5.14.orig/Kbuild klibc-1.5.14/Kbuild
--- klibc-1.5.14.orig/Kbuild 2008-07-30 23:06:03.000000000 +0200
+++ klibc-1.5.14/Kbuild 2008-09-18 13:08:42.000000000 +0200
@@ -10,9 +10,8 @@
$(Q)$(MAKE) $(klibc)=usr/kinit
$(Q)$(MAKE) $(klibc)=usr/dash
$(Q)$(MAKE) $(klibc)=usr/utils
- $(Q)$(MAKE) $(klibc)=usr/gzip
# Directories to visit during clean and install
-subdir- := scripts/basic klcc usr/klibc usr/dash usr/utils usr/gzip \
+subdir- := scripts/basic klcc usr/klibc usr/dash usr/utils \
usr/kinit usr/klibc/tests
diff -Nur klibc-1.5.14.orig/usr/Kbuild klibc-1.5.14/usr/Kbuild
--- klibc-1.5.14.orig/usr/Kbuild 2008-07-30 23:06:03.000000000 +0200
+++ klibc-1.5.14/usr/Kbuild 2008-09-18 13:08:42.000000000 +0200
@@ -6,7 +6,7 @@
include-subdir := include
klibc-subdir := klibc
-usr-subdirs := kinit utils dash gzip
+usr-subdirs := kinit utils dash
subdir- := $(include-subdir) $(klibc-subdir) $(usr-subdirs)
usr-subdirs := $(addprefix _usr_,$(usr-subdirs))
diff -Nur klibc-1.5.14.orig/usr/dash/Kbuild klibc-1.5.14/usr/dash/Kbuild
--- klibc-1.5.14.orig/usr/dash/Kbuild 2008-07-30 23:06:03.000000000 +0200
+++ klibc-1.5.14/usr/dash/Kbuild 2008-09-18 13:08:42.000000000 +0200
@@ -23,11 +23,8 @@
hostprogs-y := mkinit mksyntax mknodes mksignames
gen-h-files := arith.h builtins.h nodes.h syntax.h token.h
-static-y := sh
-
# The shared binary
-shared-y := sh.shared
-sh.shared-y := $(sh-y)
+shared-y := sh
# For cleaning
targets := sh sh.g sh.shared sh.shared.g $(gen-o-files)
@@ -108,4 +105,4 @@
$(Q):
# Targets to install
-install-y := sh.shared
+install-y := sh
diff -Nur klibc-1.5.14.orig/usr/kinit/Kbuild klibc-1.5.14/usr/kinit/Kbuild
--- klibc-1.5.14.orig/usr/kinit/Kbuild 2008-07-30 23:06:03.000000000 +0200
+++ klibc-1.5.14/usr/kinit/Kbuild 2008-09-18 13:08:42.000000000 +0200
@@ -17,9 +17,7 @@
kinit-y += fstype/
kinit-y += resume/
-static-y := kinit
-shared-y := kinit.shared
-kinit.shared-y := $(kinit-y)
+shared-y := kinit
# Additional include paths files
KLIBCCFLAGS += -I$(srctree)/$(src)/fstype \
@@ -34,4 +32,4 @@
# install binary
-install-y := kinit kinit.shared
+install-y := kinit
diff -Nur klibc-1.5.14.orig/usr/utils/Kbuild klibc-1.5.14/usr/utils/Kbuild
--- klibc-1.5.14.orig/usr/utils/Kbuild 2008-07-30 23:06:03.000000000 +0200
+++ klibc-1.5.14/usr/utils/Kbuild 2008-09-18 13:08:56.000000000 +0200
@@ -4,7 +4,7 @@
progs := chroot dd mkdir mkfifo mknod mount pivot_root umount
progs += true false sleep ln nuke minips cat
-progs += uname halt kill readlink cpio sync dmesg
+progs += uname halt readlink sync dmesg
static-y := $(addprefix static/, $(progs))
shared-y := $(addprefix shared/, $(progs))

View file

@ -1,12 +0,0 @@
diff -Nur klibc-1.5.orig/klcc/klcc.in klibc-1.5/klcc/klcc.in
--- klibc-1.5.orig/klcc/klcc.in 2007-03-04 02:52:10.000000000 +0100
+++ klibc-1.5/klcc/klcc.in 2007-10-31 09:20:34.000000000 +0100
@@ -113,7 +113,7 @@
$save_temps = 0; # The -save-temps option
$verbose = 0; # The -v option
-$shared = 0; # Are we compiling shared?
+$shared = 1; # Are we compiling shared?
$debugging = 0; # -g or -p option present?
$strip = 0; # -s option present?
undef $output; # -o option present?

View file

@ -1,9 +0,0 @@
diff -Nur klibc-1.5/defconfig klibc-1.5p/defconfig
--- klibc-1.5/defconfig 2007-03-04 02:52:10.000000000 +0100
+++ klibc-1.5p/defconfig 2008-02-08 19:24:22.337127756 +0100
@@ -5,4 +5,4 @@
CONFIG_REGPARM=y
# ARM options
# CONFIG_KLIBC_THUMB is not set
-# CONFIG_AEABI is not set
+CONFIG_AEABI=y

View file

@ -1,12 +0,0 @@
diff -Nur klibc-1.5.14.orig/scripts/Kbuild.klibc klibc-1.5.14/scripts/Kbuild.klibc
--- klibc-1.5.14.orig/scripts/Kbuild.klibc 2008-07-30 23:06:03.000000000 +0200
+++ klibc-1.5.14/scripts/Kbuild.klibc 2008-12-29 23:59:14.000000000 +0100
@@ -103,7 +103,7 @@
-I$(KLIBCINC)
# kernel include paths
KLIBCKERNELSRC ?= $(srctree)/
-KLIBCCPPFLAGS += -I$(KLIBCKERNELSRC)include \
+KLIBCCPPFLAGS += -I$(KLIBCKERNELSRC)include -I$(KLIBCKERNELSRC)arch/$(KLIBCARCHDIR)/include \
$(if $(KBUILD_SRC),-I$(KLIBCKERNELOBJ)include2 -I$(KLIBCKERNELOBJ)include -I$(srctree)/include) \
$(KLIBCARCHINCFLAGS)

View file

@ -1,34 +0,0 @@
--- klibc-1.5.15.orig/usr/klibc/arch/arm/MCONFIG 2009-01-04 19:28:03.000000000 +0000
+++ klibc-1.5.15/usr/klibc/arch/arm/MCONFIG 2009-08-31 11:57:05.000000000 +0000
@@ -7,29 +7,13 @@
# accordingly.
#
-CPU_ARCH := armv4
-CPU_TUNE := strongarm
+CPU_ARCH := armv4t
-KLIBCOPTFLAGS += -Os -march=$(CPU_ARCH) -mtune=$(CPU_TUNE)
+KLIBCOPTFLAGS += -Os -march=$(CPU_ARCH) -msoft-float
KLIBCBITSIZE = 32
-KLIBCREQFLAGS += -fno-exceptions
KLIBCSTRIPFLAGS += -R .ARM.exidx
-ifeq ($(CONFIG_KLIBC_THUMB),y)
-CPU_ARCH := $(CPU_ARCH)t
-KLIBCREQFLAGS += -mthumb
-KLIBCLDFLAGS += --thumb-entry _start
-KLIBCEMAIN = --thumb-entry _start
-KLIBCREQFLAGS += -mabi=aapcs-linux
-KLIBCSHAREDFLAGS = -Ttext 0x380200
-else
# Extra linkflags when building the shared version of the library
# This address needs to be reachable using normal inter-module
# calls, and work on the memory models for this architecture
KLIBCSHAREDFLAGS = -Ttext 0x01800200
-ifeq ($(CONFIG_AEABI),y)
-KLIBCREQFLAGS += -mabi=aapcs-linux -mno-thumb-interwork
-else
-KLIBCREQFLAGS += -mabi=apcs-gnu -mno-thumb-interwork
-endif
-endif

View file

@ -1,28 +0,0 @@
diff -Nur klibc-1.5.14.orig/usr/include/arch/x86_64/sys/io.h klibc-1.5.14/usr/include/arch/x86_64/sys/io.h
--- klibc-1.5.14.orig/usr/include/arch/x86_64/sys/io.h 2008-07-30 23:06:03.000000000 +0200
+++ klibc-1.5.14/usr/include/arch/x86_64/sys/io.h 2008-09-18 14:34:20.000000000 +0200
@@ -60,21 +60,21 @@
{
unsigned char __v;
asm volatile ("inb %1,%0" : "=a" (__v) : "dN"(__p));
- return v;
+ return __v;
}
static __inline__ unsigned short inw(unsigned short __p)
{
unsigned short __v;
asm volatile ("inw %1,%0" : "=a" (__v) : "dN"(__p));
- return v;
+ return __v;
}
static __inline__ unsigned int inl(unsigned short __p)
{
unsigned int __v;
asm volatile ("inl %1,%0" : "=a" (__v) : "dN"(__p));
- return v;
+ return __v;
}
/* String I/O macros */

View file

@ -1,4 +1,5 @@
# Maintainer: Alexander Foremny <alexanderforemny@gmail.com>
# Modified by OpenPogo
pkgname=less
pkgver=418
@ -15,8 +16,8 @@ md5sums=('b5864d76c54ddf4627fd57ab333c88b4')
build() {
cd $srcdir/less-$pkgver
./configure --prefix=/usr
./configure --prefix=/opt
make || return 1
make prefix=$startdir/pkg/usr install
make prefix=$startdir/pkg/opt install
}