index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
-rwxr-xr-x | scripts/makepkg.in | 179 |
diff --git a/scripts/makepkg.in b/scripts/makepkg.in index 1125e852..077b7742 100755 --- a/scripts/makepkg.in +++ b/scripts/makepkg.in @@ -393,6 +393,95 @@ removedeps() { fi } +create_package() { + # get some package meta info + builddate=$(LC_ALL= ; LANG= ; date -u "+%a %b %e %H:%M:%S %Y") + if [ "$PACKAGER" != "" ]; then + packager="$PACKAGER" + else + packager="Arch Linux (http://www.archlinux.org)" + fi + size=$(du -cb "$startdir/pkg" | tail -n 1 | awk '{print $1}') + + # build a filelist - do this first to keep meta files out of the list + msg "$(gettext "Generating .FILELIST file...")" + cd "$startdir/pkg" + tar cvf /dev/null * | sort >.FILELIST + + # write the .PKGINFO file + msg "$(gettext "Generating .PKGINFO file...")" + cd "$startdir/pkg" + echo "# Generated by makepkg $myver" >.PKGINFO + echo -n "# " >>.PKGINFO + date >>.PKGINFO + echo "pkgname = $pkgname" >>.PKGINFO + echo "pkgver = $pkgver-$pkgrel" >>.PKGINFO + echo "pkgdesc = $pkgdesc" >>.PKGINFO + echo "url = $url" >>.PKGINFO + echo "builddate = $builddate" >>.PKGINFO + echo "packager = $packager" >>.PKGINFO + echo "size = $size" >>.PKGINFO + if [ "$CARCH" != "" ]; then + echo "arch = $CARCH" >>.PKGINFO + fi + + for it in "${license[@]}"; do + echo "license = $it" >>.PKGINFO + done + for it in "${replaces[@]}"; do + echo "replaces = $it" >>.PKGINFO + done + for it in "${groups[@]}"; do + echo "group = $it" >>.PKGINFO + done + for it in "${depends[@]}"; do + echo "depend = $it" >>.PKGINFO + done + for it in "${conflicts[@]}"; do + echo "conflict = $it" >>.PKGINFO + done + for it in "${provides[@]}"; do + echo "provides = $it" >>.PKGINFO + done + for it in "${backup[@]}"; do + echo "backup = $it" >>.PKGINFO + done + + # TODO maybe remove this at some point + # warn if license array is not present or empty + if [ "$license" = "" ]; then + warning "$(eval_gettext "Please add a license line to your \$BUILDSCRIPT!")" + plain "$(gettext "example for GPL\'ed software: license=(\'GPL\').")" + fi + + # check for an install script + if [ "$install" != "" ]; then + msg "$(gettext "Copying install script...")" + cp "$startdir/$install" "$startdir/pkg/.INSTALL" + fi + + # do we have a changelog? + have_changelog=0 + if [ -f "$startdir/ChangeLog" ]; then + msg "$(gettext "Copying package changelog")" + cp "$startdir/ChangeLog" "$startdir/pkg/.CHANGELOG" + have_changelog=1 + fi + + # tar it up + msg "$(gettext "Compressing package...")" + cd "$startdir/pkg" + + pkg_file="$PKGDEST/$pkgname-$pkgver-$pkgrel-${CARCH}.${PKGEXT}" + comp_files=".PKGINFO .FILELIST ${install:+.INSTALL}" + [ $have_changelog -eq 1 ] && comp_files=".CHANGELOG $comp_files" + + if ! tar czf $pkg_file $comp_files *; then + error "$(gettext "Failed to create package file.")" + exit 1 + fi +} + installpackage() { if [ "$INSTALL" = "1" -a "$SUDO" = "1" ]; then msg "$(gettext "Installing package with pacman -U...")" @@ -1021,92 +1110,7 @@ if [ "$(check_option emptydirs)" = "n" ]; then find -depth -type d -empty -delete; fi -# get some package meta info -builddate=$(LC_ALL= ; LANG= ; date -u "+%a %b %e %H:%M:%S %Y") -if [ "$PACKAGER" != "" ]; then - packager="$PACKAGER" -else - packager="Arch Linux (http://www.archlinux.org)" -fi -size=$(du -cb "$startdir/pkg" | tail -n 1 | awk '{print $1}') - -# build a filelist - do this first to keep meta files out of the list -msg "$(gettext "Generating .FILELIST file...")" -cd "$startdir/pkg" -tar cvf /dev/null * | sort >.FILELIST - -# write the .PKGINFO file -msg "$(gettext "Generating .PKGINFO file...")" -cd "$startdir/pkg" -echo "# Generated by makepkg $myver" >.PKGINFO -echo -n "# " >>.PKGINFO -date >>.PKGINFO -echo "pkgname = $pkgname" >>.PKGINFO -echo "pkgver = $pkgver-$pkgrel" >>.PKGINFO -echo "pkgdesc = $pkgdesc" >>.PKGINFO -echo "url = $url" >>.PKGINFO -echo "builddate = $builddate" >>.PKGINFO -echo "packager = $packager" >>.PKGINFO -echo "size = $size" >>.PKGINFO -if [ "$CARCH" != "" ]; then - echo "arch = $CARCH" >>.PKGINFO -fi - -for it in "${license[@]}"; do - echo "license = $it" >>.PKGINFO -done -for it in "${replaces[@]}"; do - echo "replaces = $it" >>.PKGINFO -done -for it in "${groups[@]}"; do - echo "group = $it" >>.PKGINFO -done -for it in "${depends[@]}"; do - echo "depend = $it" >>.PKGINFO -done -for it in "${conflicts[@]}"; do - echo "conflict = $it" >>.PKGINFO -done -for it in "${provides[@]}"; do - echo "provides = $it" >>.PKGINFO -done -for it in "${backup[@]}"; do - echo "backup = $it" >>.PKGINFO -done - -# TODO maybe remove this at some point -# warn if license array is not present or empty -if [ "$license" = "" ]; then - warning "$(eval_gettext "Please add a license line to your \$BUILDSCRIPT!")" - plain "$(gettext "example for GPL\'ed software: license=(\'GPL\').")" -fi - -# check for an install script -if [ "$install" != "" ]; then - msg "$(gettext "Copying install script...")" - cp "$startdir/$install" "$startdir/pkg/.INSTALL" -fi - -# do we have a changelog? -have_changelog=0 -if [ -f "$startdir/ChangeLog" ]; then - msg "$(gettext "Copying package changelog")" - cp "$startdir/ChangeLog" "$startdir/pkg/.CHANGELOG" - have_changelog=1 -fi - -# tar it up -msg "$(gettext "Compressing package...")" -cd "$startdir/pkg" - -pkg_file="$PKGDEST/$pkgname-$pkgver-$pkgrel-${CARCH}.${PKGEXT}" -comp_files=".PKGINFO .FILELIST ${install:+.INSTALL}" -[ $have_changelog -eq 1 ] && comp_files=".CHANGELOG $comp_files" - -if ! tar czf $pkg_file $comp_files *; then - error "$(gettext "Failed to create package file.")" - exit 1 -fi +create_package cd "$startdir" if [ "$CLEANUP" = "1" ]; then @@ -1124,5 +1128,4 @@ installpackage exit 0 -# vim: set ts=2 sw=2 noet: - +# vim: set ts=2 sw=2 noet:
\ No newline at end of file |