* [gentoo-commits] proj/R_overlay:gsoc13/next commit in: scripts/
2013-07-10 16:16 [gentoo-commits] proj/R_overlay:master commit in: scripts/ André Erdmann
@ 2013-07-10 15:10 ` André Erdmann
0 siblings, 0 replies; 2+ messages in thread
From: André Erdmann @ 2013-07-10 15:10 UTC (permalink / raw
To: gentoo-commits
commit: a353dfabbe238f241c3e012be4343886374e4aaa
Author: André Erdmann <dywi <AT> mailerd <DOT> de>
AuthorDate: Wed Jul 10 13:39:30 2013 +0000
Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
CommitDate: Wed Jul 10 13:39:30 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=a353dfab
scripts/: generate setup.py
---
scripts/gen_setuppy.sh | 149 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 149 insertions(+)
diff --git a/scripts/gen_setuppy.sh b/scripts/gen_setuppy.sh
new file mode 100755
index 0000000..ebba44e
--- /dev/null
+++ b/scripts/gen_setuppy.sh
@@ -0,0 +1,149 @@
+#!/bin/sh
+#
+# creates a setup.py file
+#
+
+set -u
+
+readonly I=" "
+readonly Q="'"
+readonly QQ='"'
+
+case "${0##*/}" in
+ gen_setup*)
+ readonly PRJROOT=$( dirname $( readlink -f $( dirname "${0}" ) ) )
+ ;;
+ *)
+ readonly PRJROOT=$( readlink -f "${PWD}" )
+ ;;
+esac
+readonly S="${PRJROOT}"
+
+# --- PRJ_* ---
+
+: ${PRJ_NAME:='R_Overlay'}
+: ${PRJ_DESC:='Automatically generated overlay of R packages (SoC2012)'}
+: ${PRJ_AUTHOR:='André Erdmann'}
+: ${PRJ_AUTHOR_EMAIL:='dywi@mailerd.de'}
+: ${PRJ_LICENSE:='GPLv2+'}
+: ${PRJ_URL:='http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=summary'}
+: ${PRJ_SCRIPTS:='roverlay.py'}
+
+if [ -z "${PRJ_VERSION-}" ]; then
+ PRJ_VERSION=$( sed -rn -e \
+ "s,^version\s*=\s*[${Q}${QQ}]([^${Q}${QQ}]+)[${Q}${QQ}].*$,\1,p" \
+ "${S}/roverlay/__init__.py"
+ )
+ #PRJ_VERSION=$( python -EB "${S}/roverlay.py" --version 2>&1 )
+fi
+
+case "${PRJ_VERSION}" in
+ [0-9]*) true ;;
+ *)
+ echo "invalid roverlay version '${PRJ_VERSION}'!" 1>&2
+ exit 9
+ ;;
+esac
+# --- end PRJ_* ---
+
+
+PKGLIST=$(
+ find roverlay/ -type d -not -name __pycache__| \
+ sort | sed -e "s=^=${I}${I}$Q=" -e "s=[/]*$=$Q,=" -e 's=[/]=.=g'
+)
+
+
+
+mklist() { local word; for word; do echo "${Q}${word}${Q},"; done; }
+i_mklist() { mklist "$@" | sed -e "s=^=${I}${I}="; }
+
+
+
+gen_data_list() {
+ # disabled
+ return 0
+
+ g() {
+ local w="${1}"; shift || return
+ echo -n "( ${Q}${w}${Q}, [ "
+ local k
+ for k; do echo -n "${Q}${k}${Q}, "; done
+ echo "]),"
+ }
+ p() {
+ local pre="${1}"; shift || return
+ local w
+ for w; do echo "${pre}${w}"; done
+ }
+
+ g '/etc/roverlay' $( p 'config/' \
+ 'description_fields.conf' \
+ 'license.map' \
+ 'repo.list' \
+ 'R-overlay.conf'
+ )
+
+ unset -f p
+ unset -f g
+}
+
+gen_setup() {
+ : ${I?}
+cat << EOF
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+
+import distutils.core
+
+distutils.core.setup (
+${I}name = '${PRJ_NAME?}',
+${I}version = '${PRJ_VERSION?}',
+${I}description = '${PRJ_DESC?}',
+${I}author = '${PRJ_AUTHOR?}',
+${I}author_email = '${PRJ_AUTHOR_EMAIL?}',
+${I}license = '${PRJ_LICENSE?}',
+${I}url = '${PRJ_URL?}',
+${I}packages = [
+${PKGLIST?}
+${I}],
+${I}scripts = [
+$(i_mklist ${PRJ_SCRIPTS})
+${I}],
+${I}data_files = [
+$( gen_data_list | sed "s=^=${I}${I}=" )
+${I}],
+${I}classifiers = [
+${I}${I}#'Development Status :: 3 - Alpha',
+${I}${I}'Development Status :: 4 - Beta',
+${I}${I}'Environment :: Console',
+${I}${I}'Intended Audience :: Developers',
+${I}${I}'Intended Audience :: System Administrators',
+${I}${I}'License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)',
+${I}${I}'Operating System :: POSIX :: Linux',
+${I}${I}'Programming Language :: Python :: 2.7',
+${I}${I}'Programming Language :: Python :: 3',
+${I}${I}'Programming Language :: Unix Shell',
+${I}${I}'Topic :: System :: Software Distribution',
+${I}],
+)
+EOF
+}
+
+gen_setup_file() {
+ if gen_setup > "${1:?}.new"; then
+ mv -f "${1}.new" "${1}" && chmod ug+x "${1}"
+ fi
+}
+
+
+case "${1-}" in
+ '')
+ gen_setup_file "${S}/setup.py"
+ ;;
+ '-1'|'--stdout'|'-')
+ gen_setup
+ ;;
+ *)
+ gen_setup_file "${1}"
+ ;;
+esac
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [gentoo-commits] proj/R_overlay:master commit in: scripts/
@ 2013-07-10 16:16 André Erdmann
2013-07-10 15:10 ` [gentoo-commits] proj/R_overlay:gsoc13/next " André Erdmann
0 siblings, 1 reply; 2+ messages in thread
From: André Erdmann @ 2013-07-10 16:16 UTC (permalink / raw
To: gentoo-commits
commit: a353dfabbe238f241c3e012be4343886374e4aaa
Author: André Erdmann <dywi <AT> mailerd <DOT> de>
AuthorDate: Wed Jul 10 13:39:30 2013 +0000
Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
CommitDate: Wed Jul 10 13:39:30 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=a353dfab
scripts/: generate setup.py
---
scripts/gen_setuppy.sh | 149 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 149 insertions(+)
diff --git a/scripts/gen_setuppy.sh b/scripts/gen_setuppy.sh
new file mode 100755
index 0000000..ebba44e
--- /dev/null
+++ b/scripts/gen_setuppy.sh
@@ -0,0 +1,149 @@
+#!/bin/sh
+#
+# creates a setup.py file
+#
+
+set -u
+
+readonly I=" "
+readonly Q="'"
+readonly QQ='"'
+
+case "${0##*/}" in
+ gen_setup*)
+ readonly PRJROOT=$( dirname $( readlink -f $( dirname "${0}" ) ) )
+ ;;
+ *)
+ readonly PRJROOT=$( readlink -f "${PWD}" )
+ ;;
+esac
+readonly S="${PRJROOT}"
+
+# --- PRJ_* ---
+
+: ${PRJ_NAME:='R_Overlay'}
+: ${PRJ_DESC:='Automatically generated overlay of R packages (SoC2012)'}
+: ${PRJ_AUTHOR:='André Erdmann'}
+: ${PRJ_AUTHOR_EMAIL:='dywi@mailerd.de'}
+: ${PRJ_LICENSE:='GPLv2+'}
+: ${PRJ_URL:='http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=summary'}
+: ${PRJ_SCRIPTS:='roverlay.py'}
+
+if [ -z "${PRJ_VERSION-}" ]; then
+ PRJ_VERSION=$( sed -rn -e \
+ "s,^version\s*=\s*[${Q}${QQ}]([^${Q}${QQ}]+)[${Q}${QQ}].*$,\1,p" \
+ "${S}/roverlay/__init__.py"
+ )
+ #PRJ_VERSION=$( python -EB "${S}/roverlay.py" --version 2>&1 )
+fi
+
+case "${PRJ_VERSION}" in
+ [0-9]*) true ;;
+ *)
+ echo "invalid roverlay version '${PRJ_VERSION}'!" 1>&2
+ exit 9
+ ;;
+esac
+# --- end PRJ_* ---
+
+
+PKGLIST=$(
+ find roverlay/ -type d -not -name __pycache__| \
+ sort | sed -e "s=^=${I}${I}$Q=" -e "s=[/]*$=$Q,=" -e 's=[/]=.=g'
+)
+
+
+
+mklist() { local word; for word; do echo "${Q}${word}${Q},"; done; }
+i_mklist() { mklist "$@" | sed -e "s=^=${I}${I}="; }
+
+
+
+gen_data_list() {
+ # disabled
+ return 0
+
+ g() {
+ local w="${1}"; shift || return
+ echo -n "( ${Q}${w}${Q}, [ "
+ local k
+ for k; do echo -n "${Q}${k}${Q}, "; done
+ echo "]),"
+ }
+ p() {
+ local pre="${1}"; shift || return
+ local w
+ for w; do echo "${pre}${w}"; done
+ }
+
+ g '/etc/roverlay' $( p 'config/' \
+ 'description_fields.conf' \
+ 'license.map' \
+ 'repo.list' \
+ 'R-overlay.conf'
+ )
+
+ unset -f p
+ unset -f g
+}
+
+gen_setup() {
+ : ${I?}
+cat << EOF
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+
+import distutils.core
+
+distutils.core.setup (
+${I}name = '${PRJ_NAME?}',
+${I}version = '${PRJ_VERSION?}',
+${I}description = '${PRJ_DESC?}',
+${I}author = '${PRJ_AUTHOR?}',
+${I}author_email = '${PRJ_AUTHOR_EMAIL?}',
+${I}license = '${PRJ_LICENSE?}',
+${I}url = '${PRJ_URL?}',
+${I}packages = [
+${PKGLIST?}
+${I}],
+${I}scripts = [
+$(i_mklist ${PRJ_SCRIPTS})
+${I}],
+${I}data_files = [
+$( gen_data_list | sed "s=^=${I}${I}=" )
+${I}],
+${I}classifiers = [
+${I}${I}#'Development Status :: 3 - Alpha',
+${I}${I}'Development Status :: 4 - Beta',
+${I}${I}'Environment :: Console',
+${I}${I}'Intended Audience :: Developers',
+${I}${I}'Intended Audience :: System Administrators',
+${I}${I}'License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)',
+${I}${I}'Operating System :: POSIX :: Linux',
+${I}${I}'Programming Language :: Python :: 2.7',
+${I}${I}'Programming Language :: Python :: 3',
+${I}${I}'Programming Language :: Unix Shell',
+${I}${I}'Topic :: System :: Software Distribution',
+${I}],
+)
+EOF
+}
+
+gen_setup_file() {
+ if gen_setup > "${1:?}.new"; then
+ mv -f "${1}.new" "${1}" && chmod ug+x "${1}"
+ fi
+}
+
+
+case "${1-}" in
+ '')
+ gen_setup_file "${S}/setup.py"
+ ;;
+ '-1'|'--stdout'|'-')
+ gen_setup
+ ;;
+ *)
+ gen_setup_file "${1}"
+ ;;
+esac
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-07-10 16:17 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-10 16:16 [gentoo-commits] proj/R_overlay:master commit in: scripts/ André Erdmann
2013-07-10 15:10 ` [gentoo-commits] proj/R_overlay:gsoc13/next " André Erdmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox