6fd903a4de
Patch by Markus Heidelberg. ${VAR//-/_} which replaces - with _ aborts with "syntax error" on a system where /bin/sh points to dash. Use tr therefor as already done in the line above rather than changing the shebang to bash.
93 lines
2.1 KiB
Bash
Executable File
93 lines
2.1 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
echo "**** Autotools Add New Package Wizard ****"
|
|
echo " This script will generate files to add a"
|
|
echo " new package to buildroot."
|
|
echo
|
|
|
|
echo "What is the name of the package?"
|
|
read PACKAGE_NAME
|
|
|
|
echo "What is the version number?"
|
|
read VERSION_NUM
|
|
|
|
echo "What is the web address of the tarball?"
|
|
read DOWNLOAD_LOC
|
|
|
|
echo "Enter any known dependencies, separated"
|
|
echo "by spaces, or just press enter."
|
|
read EXTRA_DEPS
|
|
|
|
echo "Enter a description of the package."
|
|
read DESCRIPTION
|
|
|
|
echo "Does autoreconf need to be run first? (y/n)"
|
|
read ANSWER
|
|
|
|
if [ "$ANSWER" = "y" ]; then
|
|
RECONF="YES"
|
|
else
|
|
RECONF="NO"
|
|
fi
|
|
|
|
echo "Does it need to be installed to the staging dir?"
|
|
echo "Say yes, if other packages depend on it."
|
|
echo "(If not sure, just say yes. It will only use more"
|
|
echo "space on your hard drive.)"
|
|
read ANSWER
|
|
|
|
if [ "$ANSWER" = "y" ]; then
|
|
STAGING="YES"
|
|
else
|
|
STAGING="NO"
|
|
fi
|
|
|
|
echo "Enter any configure script options."
|
|
read CONFIG_OPTIONS
|
|
|
|
URL=${DOWNLOAD_LOC%/*}
|
|
TARBALL=${DOWNLOAD_LOC##*/}
|
|
EXTENSION=${TARBALL##*.tar.}
|
|
NAME_UPPER=`echo ${PACKAGE_NAME} | tr a-z- A-Z_`
|
|
|
|
mkdir ../package/${PACKAGE_NAME}
|
|
|
|
cat > ../package/${PACKAGE_NAME}/${PACKAGE_NAME}.mk <<EOF
|
|
#############################################################
|
|
#
|
|
# ${PACKAGE_NAME}
|
|
#
|
|
#############################################################
|
|
${NAME_UPPER}_VERSION = ${VERSION_NUM}
|
|
${NAME_UPPER}_SOURCE = ${PACKAGE_NAME}-\$(${NAME_UPPER}_VERSION).tar.${EXTENSION}
|
|
${NAME_UPPER}_SITE = ${URL}
|
|
${NAME_UPPER}_AUTORECONF = ${RECONF}
|
|
${NAME_UPPER}_INSTALL_STAGING = ${STAGING}
|
|
${NAME_UPPER}_INSTALL_TARGET = YES
|
|
|
|
${NAME_UPPER}_CONF_OPT = ${CONFIG_OPTIONS}
|
|
|
|
${NAME_UPPER}_DEPENDENCIES = uclibc ${EXTRA_DEPS}
|
|
|
|
\$(eval \$(call AUTOTARGETS,package,${PACKAGE_NAME}))
|
|
|
|
EOF
|
|
|
|
cat > ../package/${PACKAGE_NAME}/Config.in <<EOF
|
|
config BR2_PACKAGE_${NAME_UPPER}
|
|
bool "${PACKAGE_NAME}"
|
|
help
|
|
${DESCRIPTION}
|
|
|
|
${URL}
|
|
EOF
|
|
|
|
echo "Just add: source \"package/${PACKAGE_NAME}/Config.in\""
|
|
echo "to the file package/Config.in in an appropriate"
|
|
echo "location."
|
|
echo
|
|
echo "You are now ready to build ${PACKAGE_NAME}"
|
|
echo "Just run make menuconfig and select your new"
|
|
echo "package, then run make."
|
|
|