diff --git a/Makefile b/Makefile index 4816a5e..20e8116 100644 --- a/Makefile +++ b/Makefile @@ -2,53 +2,53 @@ DESTDIR=/ install: - if [ ! -d ${DESTDIR}/etc/pm ]; then \ - mkdir -pv ${DESTDIR}/etc/pm; \ + @if [ ! -d ${DESTDIR}/etc/pm ]; then \ + mkdir -p ${DESTDIR}/etc/pm; \ # touch ${DESTDIR}/etc/pm/repo; \ fi - if [ ! -d ${DESTDIR}/tmp ]; then \ - mkdir -pv ${DESTDIR}/tmp; \ + @if [ ! -d ${DESTDIR}/tmp ]; then \ + mkdir -p ${DESTDIR}/tmp; \ fi - if [ ! -d ${DESTDIR}/usr/bin ]; then \ - mkdir -pv ${DESTDIR}/usr/bin; \ + @if [ ! -d ${DESTDIR}/usr/bin ]; then \ + mkdir -p ${DESTDIR}/usr/bin; \ fi - if [ ! -d ${DESTDIR}/usr/share/pm ]; then \ - mkdir -pv ${DESTDIR}/usr/share/pm/{packages,repos}; \ + @if [ ! -d ${DESTDIR}/usr/share/pm ]; then \ + mkdir -p ${DESTDIR}/usr/share/pm/{packages,repos}; \ # touch ${DESTDIR}/usr/share/pm/query; \ fi - if [ ! -d ${DESTDIR}/var/cache/pm/pkg ]; then \ - mkdir -pv ${DESTDIR}/var/cache/pm/pkg; \ + @if [ ! -d ${DESTDIR}/var/cache/pm/pkg ]; then \ + mkdir -p ${DESTDIR}/var/cache/pm/pkg; \ fi - cp -v src/pm ${DESTDIR}/usr/bin/pm; + @cp src/pm ${DESTDIR}/usr/bin/pm; uninstall: - if [ -d ${DESTDIR}/etc/pm ]; then \ - rm -rv ${DESTDIR}/etc/pm; \ + @if [ -d ${DESTDIR}/etc/pm ]; then \ + rm -r ${DESTDIR}/etc/pm; \ fi - if [ -d ${DESTDIR}/usr/share/pm ]; then \ - rm -rv ${DESTDIR}/usr/share/pm; \ + @if [ -d ${DESTDIR}/usr/share/pm ]; then \ + rm -r ${DESTDIR}/usr/share/pm; \ fi - if [ -d ${DESTDIR}/var/cache/pm ]; then \ - rm -rv ${DESTDIR}/var/cache/pm; \ + @if [ -d ${DESTDIR}/var/cache/pm ]; then \ + rm -r ${DESTDIR}/var/cache/pm; \ fi - if [ -f ${DESTDIR}/usr/bin/pm ]; then \ - rm -v ${DESTDIR}/usr/bin/pm; \ + @if [ -f ${DESTDIR}/usr/bin/pm ]; then \ + rm ${DESTDIR}/usr/bin/pm; \ fi package: - mkdir -pv pm.pkg/usr/bin - mkdir -pv pm.pkg/etc/pm - mkdir -pv pm.pkg/var/cache/pm/pkg - mkdir -pv pm.pkg/usr/share/pm/{repos,packages} - echo usr/bin/pm > pm.pkg/list - echo busybox > pm.pkg/deps - cp -v src/pm pm.pkg/usr/bin/pm - tar -czvf pm.pkg.gz pm.pkg + @mkdir -p pm.pkg/usr/bin + @mkdir -p pm.pkg/etc/pm + @mkdir -p pm.pkg/var/cache/pm/pkg + @mkdir -p pm.pkg/usr/share/pm/{repos,packages} + @echo usr/bin/pm > pm.pkg/list + @echo busybox > pm.pkg/deps + @cp src/pm pm.pkg/usr/bin/pm + @tar -czf pm.pkg.gz pm.pkg clean: - if [ -d pm.pkg ]; then \ - rm -rv pm.pkg; \ + @if [ -d pm.pkg ]; then \ + rm -r pm.pkg; \ fi - if [ -f pm.pkg.gz ]; then \ - rm -v pm.pkg.gz; \ + @if [ -f pm.pkg.gz ]; then \ + rm pm.pkg.gz; \ fi \ No newline at end of file diff --git a/src/pm b/src/pm index 9e58a8a..858b3db 100755 --- a/src/pm +++ b/src/pm @@ -304,7 +304,6 @@ sync() { servers=$(/usr/bin/cat $repofile) for i in $servers; do printf "$YELLOW**$GREEN Sync $BWHITE$i\n$RESET" - # echo "$i" serverdir=$(echo $i | sed -e "/http:\//s///") serverdir=$(echo $serverdir | sed -e "/ftp:\//s///") mkdir -p $reposquerydir/$serverdir &> /dev/null @@ -339,7 +338,6 @@ search() { for j in $repoquery; do if [[ $j =~ $1 ]]; then printf "$YELLOW$serverdir: $BWHITE$j\n$RESET" - # exit 0 found=true fi done @@ -382,44 +380,60 @@ buildpkg() { else source ./PMBUILD fi - [ ! -d src ] && mkdir -pv src - [ ! -d pkg/$pkgname-$pkgver-$pkgrel.pkg ] && mkdir -pv pkg/$pkgname-$pkgver-$pkgrel.pkg - export buildroot=$(pwd) + export buildroot=$(pwd) + if [ -f $buildroot/$pkgname-$pkgver-$pkgrel.pkg.gz ]; then + if [ "$1" != "-r" ]; then + printf "$BBLUE**$BWHITE $pkgname-$pkgver-$pkgrel.pkg.gz already exists please use -r to rebuild [$YELLOW WARNING $BWHITE]\n$RESET" + exit 0 + else + [ -d pkg ] && rm -r pkg + [ -d src ] && rm -r src + [ -f $pkgname-$pkgver-$pkgrel.pkg.gz ] && rm -r $pkgname-$pkgver-$pkgrel.pkg.gz + fi + fi + [ ! -d src ] && mkdir -p src + [ ! -d pkg/$pkgname-$pkgver-$pkgrel.pkg ] && mkdir -p pkg/$pkgname-$pkgver-$pkgrel.pkg export pkgdir=$buildroot/pkg/$pkgname-$pkgver-$pkgrel.pkg if [ "$srcdir" = "" ]; then export srcdir=$buildroot/src/$pkgname fi - echo $pkgdir - echo $srcdir if [ "$gitsource" != "" ]; then - echo $gitsource + printf "$BBLUE**$BWHITE Downloading sources\n$RESET" git clone $gitsource $srcdir check $? "Download sources" fi if [[ $(type -t build) = function ]]; then - echo "yes" + printf "$BBLUE**$BWHITE Building package\n$RESET" + build + check $? "Build" else - echo "no" + echo "no build" fi if [[ $(type -t package) == function ]]; then - echo "yes" + printf "$BBLUE**$BWHITE Packaging package\n$RESET" package check $? "Package" else - echo "no" + echo "no package" fi + printf "$BBLUE**$BWHITE Stripping unneded symbols\n$RESET" + for execfile in $(find $pkgdir -executable -type f); do + strip $execfile + done + printf "$BBLUE**$BWHITE Strip unneded symbols [$BGREEN SUCCESS $BWHITE]\n$RESET" cd $pkgdir find -type f > $buildroot/list sed -i "s/.\///" $buildroot/list cd $buildroot - mv -v list $pkgdir/list + mv list $pkgdir/list if [ "$deps" != "" ]; then for i in $deps; do echo $i >> $pkgdir/deps done fi cd $pkgdir - tar -czvf $buildroot/$pkgname-$pkgver-$pkgrel.pkg.gz .. + printf "$BBLUE**$BWHITE Archiving package\n$RESET" + tar -czf $buildroot/$pkgname-$pkgver-$pkgrel.pkg.gz .. &> /dev/null check $? "Archive package" cd $buildroot unset pkgdir srcdir buildroot