aboutsummaryrefslogtreecommitdiff
path: root/trunk/src/mkbuild
diff options
context:
space:
mode:
authorrudson <rudson@04377dda-e619-0410-9926-eae83683ac58>2007-04-14 17:38:25 +0000
committerrudson <rudson@04377dda-e619-0410-9926-eae83683ac58>2007-04-14 17:38:25 +0000
commit8507fbb23b3d473214633a95570aa3fa5f0ade52 (patch)
tree203bfc1fd9c63a147f39bcc2f93c5609139639d6 /trunk/src/mkbuild
parentf76d87c78ade79c700b6dd48aeb6b8bbef60cf34 (diff)
downloadsimplepkg-8507fbb23b3d473214633a95570aa3fa5f0ade52.tar.gz
simplepkg-8507fbb23b3d473214633a95570aa3fa5f0ade52.tar.bz2
mkbuild-0.9.16: baixando a versão
git-svn-id: svn+slack://slack.fluxo.info/var/svn/simplepkg@342 04377dda-e619-0410-9926-eae83683ac58
Diffstat (limited to 'trunk/src/mkbuild')
-rwxr-xr-xtrunk/src/mkbuild669
1 files changed, 304 insertions, 365 deletions
diff --git a/trunk/src/mkbuild b/trunk/src/mkbuild
index cae7224..b6c718d 100755
--- a/trunk/src/mkbuild
+++ b/trunk/src/mkbuild
@@ -12,38 +12,46 @@
# Turn off debug
set +x
#
-# Version 0.9.18
-PROG_VERSION=0.9.18
+# Version 0.9.16
+PROG_VERSION=0.9.16
#--------------------------------------------------------------------
# Functions
#--------------------------------------------------------------------
-# Show ./configure --help
-function config_help()
-{
+
+function config_help {
+
+ # Show ./configure --help
+
view_file "Check ./configure --help" $CONFIG_HELP
+
}
-# Show file
-# INPUT: $1 string textbox
-# $2 file
-function view_file()
-{
+
+function view_file {
+
+ # Show <file> in dialog textbox
+ # use: view_file <textbox> <file>
+
[ $# -ne 2 ] && return 1
dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title " $1 " --textbox $2 20 75
+
}
-# Exit function
-function mk_exit()
-{
+function mk_exit {
+
+ # Close all temporary files and exit
+
clean_all
clear
exit $1
+
}
-# Clear all temp files
-function clean_all()
-{
+function clean_all {
+
+ # Clear all temp files
+
[ -s $DEPENDENCY_LIST ] && cp $DEPENDENCY_LIST $BASEDIR/slack-required
rm $AUX_TMP 2>/dev/null
@@ -55,25 +63,34 @@ function clean_all()
rm -rf /tmp/$MK_PKGNAME 2>/dev/null
rm $CONFIG_HELP 2>/dev/null
fi
+ rm md5sum 2>/dev/null
+
}
-# Print from file $2, the lines betwen <$1> and </$1> lines
-function print_lines()
-{
+function print_lines {
+
+ # Print from <file>, the lines betwen <tag_string> and </tag_string> lines
+ # use: print_lines_to <tag_string> <file>
+
[ $# -ne 2 ] && mk_exit 1
eval "sed -n '/<$1>/,/<\/$1>/ { /<$1>/ b; /<\/$1>/ b; p; }' $2"
+
}
-# Print from file $2, the lines betwen <$1> and $2 lines
-function print_lines_to()
-{
+function print_lines_to {
+
+ # Print from <file>, the lines betwen <tag_string_1> and string_2 lines
+ # use: print_lines_to <tag_string_1> <string_2> <file>
+
[ $# -ne 3 ] && mk_exit 1
eval "sed -n '/<$1>/,/$2/ { /<$1>/ b; /$2/ b; p; }' $3"
+
}
-# Make slack-desc file
-function mk_slackdesc()
-{
+function mk_slackdesc {
+
+ # Make slack-desc file
+
print_lines_to "slackdesc" "|-----" $SB_MODEL
echo -n $MK_PKGNAME | tr [a-z+\-] " "
echo -n "|-----handy-ruler"
@@ -87,20 +104,26 @@ function mk_slackdesc()
echo -en "$MK_PKGNAME: \n"
done
print_lines "slackdesc" $SB_MODEL | sed '1,/\]\]/ d'
+
}
-# Get label status from SlackBuild model
-function get_status()
-{
+function get_status {
+
+ # Get label status from section in the SlackBuild model
+ # use: get_status <section_name> <SlackBuild_model>
+
[ $# -ne 2 ] && mk_exit 1
eval "sed -n '/<$1>/ p' $2 | sed 's/.*> \([a-z]\+\)/\1/'"
+
}
-# Get status from edited SlackBuild
-# input: $1 -> section name
-# output: section status and section number
-function mk_status()
-{
+function mk_status {
+
+ # Get status from edited SlackBuild
+ # input: <section_name>
+ # output: section status and section number
+ # use: mk_status <section_name>
+
for i in `seq 0 $MAXSECTION`;do
if [ "${SECTION_NAME[i]}" = "$1" ]; then
echo "${SECTION_FLAG[i]} $i"
@@ -108,11 +131,14 @@ function mk_status()
fi
done
return 1
+
}
-# Edit file $3, by change string [[$1]] to $2
-function edit_file()
-{
+function edit_file {
+
+ # Edit <file>, by change string [[<old_string>]] to <new_string>
+ # use: edit_file <old_string> <new_string> <file>
+
local STR_OLD
local STR_NEW
@@ -121,12 +147,14 @@ function edit_file()
STR_NEW=$( echo $2 | sed 's/\//\\\//g' )
eval "sed 's/\[\[$STR_OLD\]\]/$STR_NEW/' $3 > $AUX_TMP"
mv $AUX_TMP $3
+
}
-# Unpackage source
-function unpkg_source()
-{
+function unpkg_source {
+
+ # Unpackage source
# FIXME: if MK_DECOMPRESSOR -ne bunzip2 or gunzip...
+
if [ $MK_DECOMPRESSOR = "bunzip2" -o $MK_DECOMPRESSOR = "gunzip" ]; then
dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
--cancel-label "Main Menu" --title "$MK_TITLE" --infobox "Uncompress source in /tmp/$MK_PKGNAME. Wait" 3 45
@@ -141,11 +169,13 @@ function unpkg_source()
dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
--title "$MK_TITLE" --msgbox "$MK_DECOMPRESSOR not configurated..." 5 45
fi
+
}
-# Download source
-function download_url()
-{
+function download_url {
+
+ # Download source
+
clear
mkdir -p $MK_SOURCEDIR/$MK_PKGNAME 2>/dev/null
wget --continue --limit-rate=$MK_LIMITRATE $MK_URL -P $MK_SOURCEDIR/$MK_PKGNAME/
@@ -154,11 +184,13 @@ function download_url()
return 0
fi
MK_SOURCE=$MK_SOURCEDIR/$MK_PKGNAME/$MK_SRCNAME
+
}
-# Select source file
-function select_source()
-{
+function select_source {
+
+ # Select source file
+
MK_SOURCE=$BASEDIR
while [ ! -f $MK_SOURCE ]; do
MK_SOURCE=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
@@ -171,14 +203,103 @@ function select_source()
MK_SRCNAME=`basename $MK_SOURCE`
MK_SOURCEDIR=`dirname $MK_SOURCE`
+
+}
+
+function change_strings {
+
+ # Change string string_1 to string_2 in all files in the current directory
+ # use: change_strings <string_1> <string_2>
+
+ [ $# -ne 2 ] && mk_exit 1
+ #[ -z "$2" ] && return 0
+ eval "grep -l \"\[\[$1\]\]\" *" | while read FILE; do
+ edit_file "$1" "$2" $FILE
+ done
+
+}
+
+function get_source_dialog {
+
+ # Dialog to download source
+
+ if [ ! -e $MK_SOURCE ]; then
+ dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
+ --title "$MK_TITLE" --yesno " Download $MK_SRCNAME? " 5 50
+ if [ $? -eq 0 ]; then
+ download_url
+ else
+ select_source
+ [ $? -eq 100 ] && return 100
+ fi
+ fi
+
+}
+
+function test_source {
+
+ # Test source by $MK_DECOMPRESSOR $MK_DECOMPRESSOR_TEST_FLAG
+
+ local TEST=1
+ local ANS=0
+
+ while [ $TEST -ne 0 ]; do
+ dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --infobox "Test source with $MK_DECOMPRESSOR $MK_DECOMPRESSOR_TEST_FLAG $MK_SOURCE" 5 50
+ $MK_DECOMPRESSOR $MK_DECOMPRESSOR_TEST_FLAG $MK_SOURCE
+ TEST=$?
+ if [ $TEST -ne 0 ]; then
+ dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --yesno "Source uncompress error. Download source again?" 6 50
+ if [ $? -eq 0 ]; then
+ rm $MK_SOURCE
+ get_source_dialog
+ [ $? -eq 100 ] return 100
+ else
+ TEST=0
+ fi
+ fi
+ done
+
+}
+
+function set_source_test {
+
+ # Configure test source variables
+
+ MK_SOURCE=$MK_SOURCEDIR/$MK_PKGNAME/$MK_SRCNAME
+ if [ "$MK_EXTENSION" = "tar.gz" -o "$MK_EXTENSION" = "gz" -o "$MK_EXTENSION" = "tgz" ]; then
+ MK_DECOMPRESSOR=gunzip
+ MK_DECOMPRESSOR_TEST_FLAG="-t"
+ elif [ "$MK_EXTENSION" = "tar.bz2" -o "$MK_EXTENSION" = "bz2" ]; then
+ MK_DECOMPRESSOR=bunzip2
+ MK_DECOMPRESSOR_TEST_FLAG="-t"
+ else
+ edit_decompress_arg
+ [ $? -eq 100 ] && return 100
+ fi
+
+}
+
+function desable_configure {
+
+ # Desable configure section
+
+ local i=0
+ while [ "${SECTION_NAME[i]}" != "configure" -a $i -le $MAXSECTION ]; do
+ let i++
+ done
+
+ [ $i -ne $MAXSECTION ] && SECTION_FLAG[i]="off"
+
}
#--------------------------------------------------------------------
# Edit functions
#--------------------------------------------------------------------
-# Edit authot, Initials and editor
-function edit_author()
-{
+
+function edit_author {
+
+ # Edit .mkslackbuild variables
+
MK_AUTHOR=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --inputbox "Enter with author complite name:" 8 60 "$MK_AUTHOR"`
edit_file "AUTHOR NAME" "$MK_AUTHOR" ~/.mkslackbuild
@@ -203,43 +324,46 @@ function edit_author()
MK_REPOS=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --inputbox "Enter with binary repository directory:" 8 60 "$MK_REPOS"`
edit_file "REPOS DIR" "$MK_REPOS" ~/.mkslackbuild
- MK_SLACKBUILD_DIR=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --inputbox "Enter with binary repository directory:" 8 60 "$MK_SLACKBUILD_DIR"`
- edit_file "SLACKBUILD DIR" "$MK_SLACKBUILD_DIR" ~/.mkslackbuild
-
MK_ARCH=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --inputbox "Enter default architecture to SlackBuild:" 8 60 "i468"`
edit_file "DEFAULT ARCH" "$MK_ARCH" ~/.mkslackbuild
MK_LIMITRATE=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --inputbox "Enter wget limit rate:" 8 60 "120k"`
edit_file "LIMIT RATE" "$MK_LIMITRATE" ~/.mkslackbuild
+
}
-# Edit source URL
-function edit_url()
-{
+
+function edit_url {
+
+ # Edit source URL
+
MK_URL=${MK_URL:="http://downloads.sourceforge.net/"}
MK_URL=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --cancel-label "Main Menu" --title "$MK_TITLE" --inputbox "Enter with complite URL from source:" 8 60 "$MK_URL"`
[ $? -ne 0 ] && return 100
+
}
-# Edit source name
-function edit_source_name()
-{
- # Carrega nome do arquivo
+function edit_source_name {
+
+ # Edit source name
+
MK_SRCNAME=`basename $MK_URL`
MK_SRCNAME=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --cancel-label "Main Menu" --title "$MK_TITLE" --inputbox "Enter with source file name:" 8 60 "$MK_SRCNAME"`
[ $? -ne 0 ] && return 100
+
}
-# Edit MK_PKGNAME, MK_VERSION and MK_EXTENSION
-function edit_pkgname()
-{
- # Remove nome, versão e extensão do nome da fonte
+function edit_pkgname {
+
+ # Edit MK_PKGNAME, MK_VERSION and MK_EXTENSION
+
+ # Remove variables values from $MK_SRCNAME
MK_SRC_NAME=`echo $MK_SRCNAME | sed -r 's/(.*)-(.*)\.(.*\..*)$/\1/'`
MK_PKGNAME=`echo $MK_SRC_NAME | tr [A-Z_] [a-z\-]`
MK_VERSION=`echo $MK_SRCNAME | sed -r 's/(.*)-(.*)\.(.*\..*)$/\2/'`
MK_EXTENSION=`echo $MK_SRCNAME | sed -r 's/(.*)-(.*)\.(.*\..*)$/\3/'`
- # Configura nome, versão e extensão do pacote
+ # Check variables values
ANS=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
--cancel-label "Main Menu" --title "$MK_TITLE" \
--form "Check information below:" 14 52 7 \
@@ -253,16 +377,16 @@ function edit_pkgname()
MK_PKGNAME=`echo $ANS | awk '{print $2}'`
MK_VERSION=`echo $ANS | awk '{print $3}'`
MK_EXTENSION=`echo $ANS | awk '{print $4}'`
+
}
-# Edit MK_DECOMPRESSOR and MK_DECOMPRESSOR_TEST_FLAG
-function edit_decompress_arg()
-{
- # Remove nome, versão e extensão do nome da fonte
+function edit_decompress_arg {
+
+ # Edit MK_DECOMPRESSOR and MK_DECOMPRESSOR_TEST_FLAG
+
MK_DECOMPRESSOR=""
MK_DECOMPRESSOR_TEST_FLAG=""
- # Configura nome, versão e extensão do pacote
ANS3=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
--cancel-label "Main Menu" --title "$MK_TITLE" \
--form "Check information below:" 10 55 3 \
@@ -272,19 +396,23 @@ function edit_decompress_arg()
MK_DECOMPRESSOR=`echo $ANS3 | awk '{print $1}'`
MK_DECOMPRESSOR_TEST_FLAG=`echo $ANS3 | awk '{print $2}'`
+
}
-# Edit configure options
-function edit_configure()
-{
+function edit_configure {
+
+ # Edit configure options
+
+ local ANS0=1
+
CONFIG_HELP=`mktemp -p /tmp/ config_$MK_PKGNAME.XXXXXX`
$MK_TMPSRC/configure --help > $CONFIG_HELP
- config_help
- #[ "$( cat $CONFIG_HELP | egrep '/usr/local')" != "" ] && MK_PREFIX=/usr || MK_PREFIX=/opt/kde
+# config_help
+
+ # Default PREFIX for Slackware 11+
MK_PREFIX="/usr"
MK_OPTIONS=""
- local ANS0=1
while [ $ANS0 -eq 1 ]; do
local ANS1="7"
@@ -333,11 +461,13 @@ function edit_configure()
ANS0=$?
done
+
}
-# Show Documentations files
-function view_docs()
-{
+function view_docs {
+
+ # Show Documentations files
+
local MENU=""
local SELECT=""
local ANS2=0
@@ -351,52 +481,49 @@ function view_docs()
ANS2=$?
[ $ANS2 -eq 0 ] && view_file "File: $SELECT" $MK_TMPSRC/$SELECT
done
+
}
-# Edit documentations files
-function edit_docfiles()
-{
+function edit_docfiles {
+
+ # Edit documentations files
+
[ -z $MK_TMPSRC ] && return 0
- if [ -e $MK_TMPSRC ]; then
- LIST=`( cd $MK_TMPSRC; find . -type f -maxdepth 1 | cut -c3- )`
- DOCMENU=""
- for i in $LIST; do
- if [ "`echo NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING | grep $i`" != "" ]; then
- DOCMENU="$DOCMENU $i \"\" on"
- else
- DOCMENU="$DOCMENU $i \"\" off"
- fi
- done
- SELECTDOCS=`eval "dialog --stdout --separate-output --backtitle \"Make SlackBuild $PROG_VERSION [$MK_PKGNAME]\" --title \"$MK_TITLE\" --cancel-label \"Continue\" --checklist \"Select documentation files below:\" 20 45 13 $DOCMENU"`
- fi
+# if [ -e $MK_TMPSRC ]; then
+ LIST=`( cd $MK_TMPSRC; find . -type f -maxdepth 1 | cut -c3- )`
+ DOCMENU=""
+ for i in $LIST; do
+ if [ "`echo NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING | grep $i`" != "" ]; then
+ DOCMENU="$DOCMENU $i \"\" on"
+ else
+ DOCMENU="$DOCMENU $i \"\" off"
+ fi
+ done
+ SELECTDOCS=`eval "dialog --stdout --separate-output --backtitle \"Make SlackBuild $PROG_VERSION [$MK_PKGNAME]\" --title \"$MK_TITLE\" --cancel-label \"Continue\" --checklist \"Select documentation files below:\" 20 45 13 $DOCMENU"`
+# fi
MK_DOCFILES="`echo $SELECTDOCS | sed ':i; N; s/\n/ /; bi'`"
+
}
-# Edit compiler architecture
-function edit_arch()
-{
+function edit_arch {
+
+ # Edit compiler architecture
+
MK_ARCH=`dialog --stdout --backtitle "Make SlackBuild documentation files below:" --cancel-label "Main Menu" --title "$MK_TITLE" --inputbox "Set an architecture to compiler:" 8 45 $MK_ARCH`
[ $? -ne 0 ] && return 100
+
}
#--------------------------------------------------------------------
# Mount files
#--------------------------------------------------------------------
-# Change string $1 to $2 in all files in the current directory
-function change_strings()
-{
- [ $# -ne 2 ] && mk_exit 1
- #[ -z "$2" ] && return 0
- eval "grep -l \"\[\[$1\]\]\" *" | while read FILE; do
- edit_file "$1" "$2" $FILE
- done
-}
-# Build initial sections
-function start_build()
-{
+function start_build {
+
+ # Start build sections
+
change_strings "SLACKBUILD AUTHOR" "$MK_AUTHOR"
change_strings "SLACKBUILD AUTHOR INITIALS" $MK_AUTHOR_INITIALS
change_strings "SOURCE NAME" "$MK_SRC_NAME"
@@ -416,15 +543,17 @@ function start_build()
fi
change_strings "DOCUMENTATION FILES" "$MK_DOCFILES"
change_strings "PREFIX" "$MK_PREFIX"
+
}
-# Mount final SlackBuild
-function mount_slackbuild()
-{
+function mount_slackbuild {
+
+ # Mount SlackBuild
+
dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --infobox "SlackBuild save in $SLACKBUILD" 5 45
rm $SLACKBUILD 2>/dev/null
-# [ ! -e `dirname $SLACKBUILD` ] && mkdir `dirname $SLACKBUILD`
+
for i in `seq 0 $MAXSECTION`; do
if [ "${SECTION_FLAG[i]}" = "all" -o "${SECTION_FLAG[i]}" = "on" ]; then
cat ${SECTION_NAME[i]}_$MK_PKGNAME.mkbuild >> $SLACKBUILD
@@ -432,11 +561,14 @@ function mount_slackbuild()
fi
done
chmod +x $SLACKBUILD
+
}
-# Mount SlackBuild to section $1
-function mount_slackbuild_to()
-{
+function mount_slackbuild_to {
+
+ # Mount SlackBuild to section section_name
+ # use: mount_slackbuild_to <section_name>
+
if [ $# -eq 1 ]; then
END_SECTION=$1
dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --infobox "SlackBuild save in $SLACKBUILD.test" 5 45
@@ -452,17 +584,19 @@ function mount_slackbuild_to()
done
echo "" >> $SLACKBUILD
fi
+
}
-# Make files section
-function make_file_sections()
-{
+function make_file_sections {
+
+ # Make files section
+
THIS_MODEL=$1
# Create SlackBuilds-sections files
rm *_$MK_PKGNAME.mkbuild 2>/dev/null
- # Make files section
+ # create file section
INDEX=0
while read ITEM; do
SECTION_NAME[INDEX]="$ITEM"
@@ -483,103 +617,16 @@ function make_file_sections()
let INDEX--
MAXSECTION=$INDEX
md5sum *.mkbuild > md5sum
-}
-function get_source_dialog()
-{
- if [ ! -e $MK_SOURCE ]; then
- dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
- --title "$MK_TITLE" --yesno " Download $MK_SRCNAME? " 5 50
- if [ $? -eq 0 ]; then
- download_url
- else
- select_source
- [ $? -eq 100 ] && return 100
- fi
- fi
-}
-
-
-function test_source()
-{
- local TEST=1
- local ANS=0
-
- while [ $TEST -ne 0 ]; do
- dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --infobox "Test source with $MK_DECOMPRESSOR $MK_DECOMPRESSOR_TEST_FLAG $MK_SOURCE" 5 50
- $MK_DECOMPRESSOR $MK_DECOMPRESSOR_TEST_FLAG $MK_SOURCE
- TEST=$?
- if [ $TEST -ne 0 ]; then
- dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --yesno "Source uncompress error. Download source again?" 6 50
- if [ $? -eq 0 ]; then
- rm $MK_SOURCE
- get_source_dialog
- [ $? -eq 100 ] return 100
- else
- TEST=0
- fi
- fi
- done
-}
-
-# Configure test source variables
-function set_source_test()
-{
- MK_SOURCE=$MK_SOURCEDIR/$MK_PKGNAME/$MK_SRCNAME
- if [ "$MK_EXTENSION" = "tar.gz" -o "$MK_EXTENSION" = "gz" -o "$MK_EXTENSION" = "tgz" ]; then
- MK_DECOMPRESSOR=gunzip
- MK_DECOMPRESSOR_TEST_FLAG="-t"
- elif [ "$MK_EXTENSION" = "tar.bz2" -o "$MK_EXTENSION" = "bz2" ]; then
- MK_DECOMPRESSOR=bunzip2
- MK_DECOMPRESSOR_TEST_FLAG="-t"
- else
- edit_decompress_arg
- [ $? -eq 100 ] && return 100
- fi
-}
-
-# Enable MD5 or GPG signature check
-function edit_signature()
-{
- # GPG and MD5 test
- local ANS=0
-
- ANS=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
- --title "$MK_TITLE" --menu "Select code validate type:" 0 0 0 \
- "1" "gpg signature" \
- "2" "md5sum" \
- "0" "none"`
-
- case $ANS in
- 1)
- edit_gpg
- ;;
- 2)
- edit_md5sum
- ;;
- esac
-}
-
-# Enable GPG signature check
-function edit_gpg()
-{
- dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
- --title "$MK_TITLE" --msgbox "Enter with gpg minimized signing key." 5 50
- $EDITOR $MK_GPGFILEKEY
-}
-
-# Enable MD5SUM signature check
-function edit_md5sum()
-{
- echo "none"
}
#--------------------------------------------------------------------
-# Main functions
+# Main Menu functions
#--------------------------------------------------------------------
-# Create new SlackBuild
-function create_slackbuild()
-{
+
+function create_slackbuild {
+
+ # Create new SlackBuild
# Config package URL
edit_url
[ $? -eq 100 ] && return 100
@@ -614,11 +661,13 @@ function create_slackbuild()
[ $? -eq 100 ] && return 100
# GPG and MD5 test
-# edit_signature
+ # ADD: edit_signature
# Configure compiler options if exist
if [ -e $MK_TMPSRC/configure ]; then
edit_configure
+ else
+ desable_configure
fi
# Edit documentation list
@@ -641,11 +690,12 @@ function create_slackbuild()
# Main-Menu
edit_menu
+
}
-# Open mkslackbuild dialog input
-function open_mkslackbuild_dialog()
-{
+function open_mkslackbuild_dialog {
+
+ # Open mkslackbuild dialog input
MKSLACKBUILD=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
--title " Select source file name: " \
--fselect "$BASEDIR/" 10 70`
@@ -653,11 +703,12 @@ function open_mkslackbuild_dialog()
open_mkslackbuild
[ $? -eq 100 ] || return 100
+
}
-# Open mkslackbuild
-function open_mkslackbuild()
-{
+function open_mkslackbuild {
+
+ # Open mkslackbuild
if [ -f $MKSLACKBUILD ]; then
# Start defaults variables
source $MKSLACKBUILD
@@ -690,11 +741,12 @@ function open_mkslackbuild()
# Uncompress source
unpkg_source
+
}
-# Save mkSlackBuild
-function save_mkslackbuild()
-{
+function save_mkslackbuild {
+
+ # Save mkSlackBuild
dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --infobox "mkSlackBuild save in $MKSLACKBUILD" 5 30
rm $MKSLACKBUILD 2>/dev/null
@@ -724,20 +776,23 @@ function save_mkslackbuild()
done
[ -s $DEPENDENCY_LIST ] && cp $DEPENDENCY_LIST $BASEDIR/slack-required
+
}
-# Edit Menu
-function edit_menu()
-{
+function edit_menu {
+
+ # Edit Menu
+
ANSE=0
while [ $ANSE -ne 1 ]; do
+
# Create main-menu string
EDITMENU=""
for i in `seq 0 $MAXSECTION`; do
- #echo "${SECTION_NAME[i]} ${SECTION_FLAG[i]} ${SECTION_FILE[i]}"
EDITMENU="$EDITMENU ${SECTION_NAME[i]} ${SECTION_FLAG[i]}"
done
+ # Show edit menu
SELECT=`eval "dialog --stdout --backtitle \"Make SlackBuild $PROG_VERSION [$MK_PKGNAME]\" --ok-label \"Edit\" --cancel-label \"Main Menu\" --title \"$MK_TITLE\" --menu \"Select one section to edit\" 20 40 13 $EDITMENU"`
ANSE=$?
if [ $ANSE -ne 1 ]; then
@@ -746,13 +801,16 @@ function edit_menu()
echo "Section name error..."
mk_exit 1
fi
+
FLAG=`echo $STATUS | awk '{print $1}'`
INDEX=`echo $STATUS | awk '{print $2}'`
+
if [ "$FLAG" = "on" ]; then
SECTION_FLAG[$INDEX]=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --radiolist "Change $SELECT status?" 0 0 0 "on" "enable section" "on" "off" "desable section" "off"`
elif [ "$FLAG" = "off" ]; then
SECTION_FLAG[$INDEX]=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --radiolist "Change $SELECT status?" 0 0 0 "on" "enable section" "off" "off" "desable section" "on"`
fi
+
if [ $? -eq 0 ]; then
if [ "${SECTION_FLAG[$INDEX]}" = "on" -o "${SECTION_FLAG[$INDEX]}" = "all" ]; then
if [ "$SELECT" = "md5sum_download_and_check" ]; then
@@ -768,11 +826,12 @@ function edit_menu()
fi
fi
done
+
}
-# Edit md5sum
-function md5sum_edit()
-{
+function md5sum_edit {
+
+ # Edit md5sum
local SELECT=0
local FILE=$1
@@ -802,11 +861,12 @@ function md5sum_edit()
fi
$MK_EDITOR $FILE
+
}
-# Test Menu
-function test_menu()
-{
+function test_menu {
+
+ # Test Menu
local ANST=0
local SECTION=0
local EDITMENU=""
@@ -863,11 +923,12 @@ function test_menu()
fi
fi
done
+
}
-# Dependency Menu
-function menu_dependency()
-{
+function menu_dependency {
+
+ # Dependency Menu
local ANSD=11
while [ $ANSD -ne 0 ]; do
ANSD=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" \
@@ -886,21 +947,23 @@ function menu_dependency()
;;
esac
done
+
}
-# Dependency list edit
-function edit_dependency()
-{
+function edit_dependency {
+
+ # Dependency list edit
if [ ! -s $DEPENDENCY_LIST ]; then
echo -e "# Dependency list to $MK_PKGNAME\n# \n# dependency [condition] [version]]\n" > $DEPENDENCY_LIST
fi
$MK_EDITOR $DEPENDENCY_LIST
+
}
-# Check dependency and comment not found dependencies
-function test_dependency()
-{
+function test_dependency {
+
+ # Check dependency and comment not found dependencies
local DEP_LIST=""
if [ -s $DEPENDENCY_LIST ]; then
@@ -922,112 +985,7 @@ function test_dependency()
cp $AUX_TMP $DEPENDENCY_LIST
done
fi
-}
-
-# Add/commit one SlackBuild
-function commit_SlackBuild()
-{
- # Mount SlackBuild
- mount_slackbuild
- MK_TITLE="Commit SlackBuild"
-
- # Find SlackBuild
- SB_PATH=`find $MK_SLACKBUILD_DIR -iname $MK_PKGNAME`
-
- # Change to SlackBuild directory
- cd $MK_SLACKBUILD_DIR
-
- # Check for new SlackBuild
- if [ -z $SB_PATH ]; then
- # New SlackBuild
- AUX=""
- while [ -z $AUX ]; do
- dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --infobox "lynx -dump http://gentoo-portage.com/Search?search=$MK_PKGNAME. Wait..." 0 0
- AUX=`lynx -dump http://gentoo-portage.com/Search?search=$MK_PKGNAME | sed -n '/Results:/,+1 { /Results:/ b ; p }' | head --lines=1 | tr -d " "`
- # Default directory
- if [ -z $AUX ]; then
- dialog --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --yesno "Net search error. Try again?" 0 0
- if [ $? -ne 0 ]; then
- AUX="/others/unclass"
- SB_PATH=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --inputbox "Enter dir-name to SlackBuild from $MK_PKGNAME:" 8 60 "$AUX"`
- fi
- else
- SB_PATH="`dirname $AUX | tr - /`/`basename $AUX`"
- fi
- done
- # Make directory and add SlackBuild to svn
- svn mkdir $SB_PATH
- cp $BASEDIR/$MK_PKGNAME.SlackBuild $SB_PATH/
- svn add $SB_PATH/$MK_PKGNAME.SlackBuild
- if [ -e $BASEDIR/slack-required ]; then
- cp $BASEDIR/slack-required $SB_PATH/
- svn add $SB_PATH/slack-required
- fi
- else
- echo "cp $BASEDIR/$MK_PKGNAME.SlackBuild $SB_PATH/"
- if [ -e $BASEDIR/slack-required ]; then
- cp $BASEDIR/slack-required $SB_PATH/
- fi
- fi
-
- # Commit SlackBuild
- MK_MSG=`dialog --stdout --backtitle "Make SlackBuild $PROG_VERSION [$MK_PKGNAME]" --title "$MK_TITLE" --inputbox "Enter message do commit command:" 8 60`
- svn commit -m "$MK_PKGNAME: $MK_MSG"
-
- cd $BASEDIR
-
- echo -e "\nPress ENTER to continue."
- read ANS1
-}
-
-# Compile SlackBuild and install
-function compile_install()
-{
- local ANS=""
- # Mount SlackBuild
- mount_slackbuild
-
- # Clean temporary file
- echo " " > $AUX_TMP
- if [ "$USER" = "root" ]; then
- # Root user
- # Compile pid
- PID=`exec-slackbuild $SLACKBUILD $AUX_TMP`
-
- # Tail messages
- tail -s .1 --pid=$PID -f $AUX_TMP
-
- # Package name
- PACKAGE=`tail -10 $AUX_TMP | grep "^Moving $MK_PKGNAME-[0-9].*\.\.\.$" | awk '{ print $2 }' | grep "$MK_PKGNAME-.*\.tgz$"`
-
- # Install package
- if [ ! -z $PACKAGE ]; then
- installpkg $MK_REPOS/$PACKAGE
- else
- echo -e "\nBuild error!"
- fi
- else
- # Commum users
- # Compile pid
- PID=`su -c "exec-slackbuild $SLACKBUILD $AUX_TMP"`
-
- # Tail messages
- tail -s .1 --pid=$PID -f $AUX_TMP
-
- # Package name
- PACKAGE=`tail -10 $AUX_TMP | grep "^Moving $MK_PKGNAME-[0-9].*\.\.\.$" | awk '{ print $2 }' | grep "$MK_PKGNAME-.*\.tgz$"`
-
- # Install package
- if [ ! -z $PACKAGE ]; then
- su -c "installpkg $MK_REPOS/$PACKAGE"
- else
- echo -e "\nBuild error!"
- fi
- fi
-
- echo -e "\nPress ENTER to continue."
- read ANS
}
#
@@ -1070,7 +1028,6 @@ MK_REPOS=[[REPOS DIR]]
MK_LIMITRATE=[[LIMIT RATE]]
MK_SOURCEDIR=[[SOURCE DIR]]
MK_ARCH=[[DEFAULT ARCH]]
-MK_SLACKBUILD_DIR=[[SLACKBUILD DIR]]
#SB_MODEL="my_model"
EOF
)
@@ -1130,10 +1087,7 @@ while [ $ANS0 -ne 0 ]; do
"2" "Edit dependency list" \
"3" "Test SlackBuild script" \
"4" "View Doc-Files" \
- "5" "Save SlackBuild and mkslackbuild" \
- "6" "Compile/install package" \
- "7" "Remove package" \
- "8" "Commit SlackBuild to Sarava"`
+ "5" "Save SlackBuild and mkslackbuild"`
if [ $? -ne 0 ]; then
ANS0=0
@@ -1159,21 +1113,6 @@ while [ $ANS0 -ne 0 ]; do
save_mkslackbuild
mount_slackbuild
;;
- 6) # Compile/install package
- compile_install
- ;;
- 7) # Remove package
- if [ "$USER" = "root" ]; then
- removepkg $MK_PKGNAME
- else
- su -c "( removepkg $MK_PKGNAME )"
- fi
- echo -e "\nPress ENTER to continue."
- read ANS1
- ;;
- 8) # Commit SlackBuild to Sarava
- commit_SlackBuild
- ;;
0) # Exit
ANS0=0
;;
@@ -1184,7 +1123,7 @@ done
# Check changes
if [ ! -z $MK_PKGNAME ]; then
- md5sum -c md5sum
+ md5sum -c md5sum >/dev/null
if [ $? -ne 0 ]; then
MKSLACKBUILD=$BASEDIR/$MK_PKGNAME.mkslackbuild
save_mkslackbuild