From 579445dbeff8aaaad06c03ae6407a4f2009ba9d1 Mon Sep 17 00:00:00 2001 From: "Wayne E. Seguin" Date: Sat, 6 Aug 2011 14:28:18 -0400 Subject: [PATCH] Initial Languages BDSM extension set. --- R/CHANGELOG.md | 0 R/README.md | 4 ++ R/TODO.md | 0 R/VERSION | 1 + R/actions/help | 8 ++++ R/config/defaults | 1 + R/config/md5 | 1 + R/modules/shell/initialize | 6 +++ R/modules/shell/modules | 1 + README | 1 + erlang/CHANGELOG.md | 0 erlang/README.md | 2 + erlang/TODO.md | 0 erlang/VERSION | 1 + erlang/actions/help | 8 ++++ erlang/config/defaults | 2 + erlang/config/md5 | 1 + erlang/modules/shell/initialize | 24 ++++++++++++ erlang/modules/shell/modules | 1 + gcc-fortran/CHANGELOG.md | 4 ++ gcc-fortran/README.md | 4 ++ gcc-fortran/TODO.md | 9 +++++ gcc-fortran/VERSION | 1 + gcc-fortran/actions/help | 7 ++++ gcc-fortran/config/defaults | 2 + gcc-fortran/config/md5 | 1 + gcc-fortran/modules/shell/cli | 7 ++++ gcc-fortran/modules/shell/initialize | 6 +++ gcc-fortran/modules/shell/modules | 1 + gcc/CHANGELOG.md | 4 ++ gcc/README.md | 5 +++ gcc/TODO.md | 4 ++ gcc/VERSION | 1 + gcc/actions/help | 10 +++++ gcc/config/defaults | 3 ++ gcc/config/md5 | 1 + gcc/modules/shell/cli | 7 ++++ gcc/modules/shell/initialize | 24 ++++++++++++ gcc/modules/shell/modules | 1 + ghc/CHANGELOG.md | 0 ghc/README.md | 2 + ghc/TODO.md | 0 ghc/VERSION | 1 + ghc/actions/help | 9 +++++ ghc/config/defaults | 2 + ghc/config/md5 | 1 + ghc/modules/shell/dsl | 8 ++++ ghc/modules/shell/initialize | 12 ++++++ ghc/modules/shell/modules | 1 + go/CHANGELOG.md | 4 ++ go/README.md | 4 ++ go/TODO.md | 4 ++ go/VERSION | 1 + go/actions/help | 7 ++++ go/config/defaults | 1 + go/config/md5 | 2 + go/modules/shell/dsl | 46 ++++++++++++++++++++++ go/modules/shell/modules | 1 + lua/CHANGELOG.md | 0 lua/README.md | 2 + lua/TODO.md | 0 lua/VERSION | 1 + lua/actions/help | 9 +++++ lua/config/defaults | 2 + lua/config/md5 | 1 + lua/modules/shell/dsl | 33 ++++++++++++++++ lua/modules/shell/initialize | 4 ++ lua/modules/shell/modules | 1 + perl/CHANGELOG.md | 4 ++ perl/README.md | 4 ++ perl/TODO.md | 3 ++ perl/VERSION | 1 + perl/actions/help | 8 ++++ perl/config/defaults | 3 ++ perl/config/md5 | 1 + perl/modules/shell/cli | 50 ++++++++++++++++++++++++ perl/modules/shell/dsl | 50 ++++++++++++++++++++++++ perl/modules/shell/modules | 1 + php/CHANGELOG.md | 4 ++ php/README.md | 4 ++ php/TODO.md | 4 ++ php/VERSION | 1 + php/actions/help | 9 +++++ php/config/defaults | 3 ++ php/config/md5 | 1 + php/modules/shell/initialize | 5 +++ php/modules/shell/modules | 2 + pypy/CHANGELOG.md | 4 ++ pypy/README.md | 4 ++ pypy/TODO.md | 9 +++++ pypy/VERSION | 1 + pypy/actions/help | 7 ++++ pypy/config/defaults | 3 ++ pypy/config/md5 | 6 +++ pypy/modules/shell/dependencies | 9 +++++ pypy/modules/shell/dsl | 58 ++++++++++++++++++++++++++++ pypy/modules/shell/initialize | 9 +++++ pypy/modules/shell/modules | 1 + python/CHANGELOG.md | 4 ++ python/README.md | 4 ++ python/TODO.md | 4 ++ python/VERSION | 1 + python/actions/help | 7 ++++ python/config/defaults | 2 + python/config/md5 | 2 + python/modules/shell/initialize | 7 ++++ python/modules/shell/modules | 1 + ruby/CHANGELOG.md | 4 ++ ruby/README.md | 4 ++ ruby/TODO.md | 3 ++ ruby/VERSION | 1 + ruby/actions/help | 10 +++++ ruby/config/defaults | 2 + ruby/config/md5 | 6 +++ ruby/modules/shell/initialize | 8 ++++ ruby/modules/shell/modules | 1 + 116 files changed, 663 insertions(+) create mode 100644 R/CHANGELOG.md create mode 100644 R/README.md create mode 100644 R/TODO.md create mode 100644 R/VERSION create mode 100755 R/actions/help create mode 100644 R/config/defaults create mode 100644 R/config/md5 create mode 100644 R/modules/shell/initialize create mode 100644 R/modules/shell/modules create mode 100644 README create mode 100644 erlang/CHANGELOG.md create mode 100644 erlang/README.md create mode 100644 erlang/TODO.md create mode 100644 erlang/VERSION create mode 100755 erlang/actions/help create mode 100644 erlang/config/defaults create mode 100644 erlang/config/md5 create mode 100644 erlang/modules/shell/initialize create mode 100644 erlang/modules/shell/modules create mode 100644 gcc-fortran/CHANGELOG.md create mode 100644 gcc-fortran/README.md create mode 100644 gcc-fortran/TODO.md create mode 100644 gcc-fortran/VERSION create mode 100755 gcc-fortran/actions/help create mode 100644 gcc-fortran/config/defaults create mode 100644 gcc-fortran/config/md5 create mode 100644 gcc-fortran/modules/shell/cli create mode 100644 gcc-fortran/modules/shell/initialize create mode 100644 gcc-fortran/modules/shell/modules create mode 100644 gcc/CHANGELOG.md create mode 100644 gcc/README.md create mode 100644 gcc/TODO.md create mode 100644 gcc/VERSION create mode 100755 gcc/actions/help create mode 100644 gcc/config/defaults create mode 100644 gcc/config/md5 create mode 100644 gcc/modules/shell/cli create mode 100644 gcc/modules/shell/initialize create mode 100644 gcc/modules/shell/modules create mode 100644 ghc/CHANGELOG.md create mode 100644 ghc/README.md create mode 100644 ghc/TODO.md create mode 100644 ghc/VERSION create mode 100755 ghc/actions/help create mode 100644 ghc/config/defaults create mode 100644 ghc/config/md5 create mode 100644 ghc/modules/shell/dsl create mode 100644 ghc/modules/shell/initialize create mode 100644 ghc/modules/shell/modules create mode 100644 go/CHANGELOG.md create mode 100644 go/README.md create mode 100644 go/TODO.md create mode 100644 go/VERSION create mode 100755 go/actions/help create mode 100644 go/config/defaults create mode 100644 go/config/md5 create mode 100644 go/modules/shell/dsl create mode 100644 go/modules/shell/modules create mode 100644 lua/CHANGELOG.md create mode 100644 lua/README.md create mode 100644 lua/TODO.md create mode 100644 lua/VERSION create mode 100755 lua/actions/help create mode 100644 lua/config/defaults create mode 100644 lua/config/md5 create mode 100644 lua/modules/shell/dsl create mode 100644 lua/modules/shell/initialize create mode 100644 lua/modules/shell/modules create mode 100644 perl/CHANGELOG.md create mode 100644 perl/README.md create mode 100644 perl/TODO.md create mode 100644 perl/VERSION create mode 100755 perl/actions/help create mode 100644 perl/config/defaults create mode 100644 perl/config/md5 create mode 100644 perl/modules/shell/cli create mode 100644 perl/modules/shell/dsl create mode 100644 perl/modules/shell/modules create mode 100644 php/CHANGELOG.md create mode 100644 php/README.md create mode 100644 php/TODO.md create mode 100644 php/VERSION create mode 100755 php/actions/help create mode 100644 php/config/defaults create mode 100644 php/config/md5 create mode 100644 php/modules/shell/initialize create mode 100644 php/modules/shell/modules create mode 100644 pypy/CHANGELOG.md create mode 100644 pypy/README.md create mode 100644 pypy/TODO.md create mode 100644 pypy/VERSION create mode 100755 pypy/actions/help create mode 100644 pypy/config/defaults create mode 100644 pypy/config/md5 create mode 100644 pypy/modules/shell/dependencies create mode 100644 pypy/modules/shell/dsl create mode 100644 pypy/modules/shell/initialize create mode 100644 pypy/modules/shell/modules create mode 100644 python/CHANGELOG.md create mode 100644 python/README.md create mode 100644 python/TODO.md create mode 100644 python/VERSION create mode 100755 python/actions/help create mode 100644 python/config/defaults create mode 100644 python/config/md5 create mode 100644 python/modules/shell/initialize create mode 100644 python/modules/shell/modules create mode 100644 ruby/CHANGELOG.md create mode 100644 ruby/README.md create mode 100644 ruby/TODO.md create mode 100644 ruby/VERSION create mode 100755 ruby/actions/help create mode 100644 ruby/config/defaults create mode 100644 ruby/config/md5 create mode 100644 ruby/modules/shell/initialize create mode 100644 ruby/modules/shell/modules diff --git a/R/CHANGELOG.md b/R/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/R/README.md b/R/README.md new file mode 100644 index 0000000..a67b91a --- /dev/null +++ b/R/README.md @@ -0,0 +1,4 @@ +# R BDSM Extension + +R Website: http://cran.r-project.org/ + diff --git a/R/TODO.md b/R/TODO.md new file mode 100644 index 0000000..e69de29 diff --git a/R/VERSION b/R/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/R/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/R/actions/help b/R/actions/help new file mode 100755 index 0000000..6a39a0a --- /dev/null +++ b/R/actions/help @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "package install" "Installs ${package_name} ${package_version}." +action "package uninstall" "Installs ${package_name} ${package_version}." + +show_help usage diff --git a/R/config/defaults b/R/config/defaults new file mode 100644 index 0000000..1a23c9e --- /dev/null +++ b/R/config/defaults @@ -0,0 +1 @@ +version=2.13.0 diff --git a/R/config/md5 b/R/config/md5 new file mode 100644 index 0000000..fbdb4ac --- /dev/null +++ b/R/config/md5 @@ -0,0 +1 @@ +R-2.13.0.tar.gz=ecfb928067cfd932e75135f8b8bba3e7 diff --git a/R/modules/shell/initialize b/R/modules/shell/initialize new file mode 100644 index 0000000..00718cf --- /dev/null +++ b/R/modules/shell/initialize @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +package_definition \ + base_url "http://cran.cnr.berkeley.edu/src/base/R-${package_version//.*}" + +configure_flags+=("--enable-R-shlib") diff --git a/R/modules/shell/modules b/R/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/R/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/README b/README new file mode 100644 index 0000000..4b0d0b3 --- /dev/null +++ b/README @@ -0,0 +1 @@ +A BDSM extension set providing extensions for managing various programming languages. diff --git a/erlang/CHANGELOG.md b/erlang/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/erlang/README.md b/erlang/README.md new file mode 100644 index 0000000..594821a --- /dev/null +++ b/erlang/README.md @@ -0,0 +1,2 @@ +# Erlang Extension Template + diff --git a/erlang/TODO.md b/erlang/TODO.md new file mode 100644 index 0000000..e69de29 diff --git a/erlang/VERSION b/erlang/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/erlang/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/erlang/actions/help b/erlang/actions/help new file mode 100755 index 0000000..3d91951 --- /dev/null +++ b/erlang/actions/help @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "install" "Install ${package_name} ${package_version}." +action "uninstall" "Uninstall ${package_name} ${package_version}." + +show_help usage diff --git a/erlang/config/defaults b/erlang/config/defaults new file mode 100644 index 0000000..9516eb4 --- /dev/null +++ b/erlang/config/defaults @@ -0,0 +1,2 @@ +version=R13B04 +base_url=http://erlang.org/download diff --git a/erlang/config/md5 b/erlang/config/md5 new file mode 100644 index 0000000..5614e04 --- /dev/null +++ b/erlang/config/md5 @@ -0,0 +1 @@ +otp_src_R13B04.tar.gz=ca6da4921e438891967900aa6a084341 diff --git a/erlang/modules/shell/initialize b/erlang/modules/shell/initialize new file mode 100644 index 0000000..1d35d13 --- /dev/null +++ b/erlang/modules/shell/initialize @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +package_definition \ + file "otp_src_${package_version}.${archive_format}" \ + dir "otp_src_${package_version}" + +package_dependencies=( ncurses openssl ) + +configure_flags=( + --enable-hipe + --enable-smp-support + --enable-threads + --enable-kernel-poll +) + +if os_is_darwin +then + configure_flags[${#configure_flags[@]}]="--enable-darwin-64bit" +fi + +# It is important to build single threaded, +# which is very amusing given it is for Erlang... +make_flags="-j1" + diff --git a/erlang/modules/shell/modules b/erlang/modules/shell/modules new file mode 100644 index 0000000..85edd48 --- /dev/null +++ b/erlang/modules/shell/modules @@ -0,0 +1 @@ +modules ext/package diff --git a/gcc-fortran/CHANGELOG.md b/gcc-fortran/CHANGELOG.md new file mode 100644 index 0000000..83160d5 --- /dev/null +++ b/gcc-fortran/CHANGELOG.md @@ -0,0 +1,4 @@ +# BDSM Extension Change Log + +* 0.0.1 - Initial Extension Release + diff --git a/gcc-fortran/README.md b/gcc-fortran/README.md new file mode 100644 index 0000000..f4b2d1b --- /dev/null +++ b/gcc-fortran/README.md @@ -0,0 +1,4 @@ +# Extension README + +This extension has the purpose... + diff --git a/gcc-fortran/TODO.md b/gcc-fortran/TODO.md new file mode 100644 index 0000000..6fb39ec --- /dev/null +++ b/gcc-fortran/TODO.md @@ -0,0 +1,9 @@ +# Extension TODO List + +* TODO: Package and release the extension. +* TODO: Write the extension actions +* TODO: Adjust the cli to meet the extensions requirements +* TODO: Write the extension functions +* TODO: Write the extension initialize +* TODO: Write the extension README + diff --git a/gcc-fortran/VERSION b/gcc-fortran/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/gcc-fortran/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/gcc-fortran/actions/help b/gcc-fortran/actions/help new file mode 100755 index 0000000..6557d14 --- /dev/null +++ b/gcc-fortran/actions/help @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "help" "Display help for ${extension}." + +show_help usage diff --git a/gcc-fortran/config/defaults b/gcc-fortran/config/defaults new file mode 100644 index 0000000..20412c3 --- /dev/null +++ b/gcc-fortran/config/defaults @@ -0,0 +1,2 @@ +version=4.6.0 +archive_format=tar.bz2 diff --git a/gcc-fortran/config/md5 b/gcc-fortran/config/md5 new file mode 100644 index 0000000..7f09b6f --- /dev/null +++ b/gcc-fortran/config/md5 @@ -0,0 +1 @@ +gcc-fortran-4.6.0.tar.bz2=a4687a9035c3e92db7e84fc01fc548ef diff --git a/gcc-fortran/modules/shell/cli b/gcc-fortran/modules/shell/cli new file mode 100644 index 0000000..116f4e0 --- /dev/null +++ b/gcc-fortran/modules/shell/cli @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +if [[ ! "${configure_flags[*]}" =~ *--prefix* ]] +then + configure_flags+=(--prefix "${install_path}") +fi + diff --git a/gcc-fortran/modules/shell/initialize b/gcc-fortran/modules/shell/initialize new file mode 100644 index 0000000..690445e --- /dev/null +++ b/gcc-fortran/modules/shell/initialize @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +package_definition \ + base_url "http://mirror.rit.edu/gnu/gcc/gcc-${package_version}" + dir "gcc-${package_version}/libgfortran" + diff --git a/gcc-fortran/modules/shell/modules b/gcc-fortran/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/gcc-fortran/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/gcc/CHANGELOG.md b/gcc/CHANGELOG.md new file mode 100644 index 0000000..83160d5 --- /dev/null +++ b/gcc/CHANGELOG.md @@ -0,0 +1,4 @@ +# BDSM Extension Change Log + +* 0.0.1 - Initial Extension Release + diff --git a/gcc/README.md b/gcc/README.md new file mode 100644 index 0000000..b0e89ba --- /dev/null +++ b/gcc/README.md @@ -0,0 +1,5 @@ +# Extension README + +This extension installs the GNU Compiler Collection (GCC) + +For more information about GCC visit the website at http://gcc.gnu.org/ diff --git a/gcc/TODO.md b/gcc/TODO.md new file mode 100644 index 0000000..3126ae4 --- /dev/null +++ b/gcc/TODO.md @@ -0,0 +1,4 @@ +# Extension TODO List + +* TODO: Package and release the extension. + diff --git a/gcc/VERSION b/gcc/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/gcc/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/gcc/actions/help b/gcc/actions/help new file mode 100755 index 0000000..7afc11e --- /dev/null +++ b/gcc/actions/help @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "package install" "Installs ${package_name} ${package_version}." +action "package uninstall" "Installs ${package_name} ${package_version}." + +action "help" "Display help for ${extension}." + +show_help usage diff --git a/gcc/config/defaults b/gcc/config/defaults new file mode 100644 index 0000000..313a968 --- /dev/null +++ b/gcc/config/defaults @@ -0,0 +1,3 @@ +version=4.6.0 +archive_format=tar.bz2 +website_url=http://gcc.gnu.org/ diff --git a/gcc/config/md5 b/gcc/config/md5 new file mode 100644 index 0000000..5440d77 --- /dev/null +++ b/gcc/config/md5 @@ -0,0 +1 @@ +gcc-4.6.0.tar.bz2=93d1c436bf991564524701259b6285a2 diff --git a/gcc/modules/shell/cli b/gcc/modules/shell/cli new file mode 100644 index 0000000..116f4e0 --- /dev/null +++ b/gcc/modules/shell/cli @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +if [[ ! "${configure_flags[*]}" =~ *--prefix* ]] +then + configure_flags+=(--prefix "${install_path}") +fi + diff --git a/gcc/modules/shell/initialize b/gcc/modules/shell/initialize new file mode 100644 index 0000000..9c295a5 --- /dev/null +++ b/gcc/modules/shell/initialize @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +package_definition \ + base_url "http://mirror.rit.edu/gnu/gcc/gcc-${package_version}" + +for library in gmp mpfr mpc iconv +do + if path_exists "${packages_path}/${library}/active" + then + configure_flags+=( --with-${library}="${packages_path}/active" ) + else + error "${library} was not found installed via bdsm,"\ + " install it and then retry." + fi +done +unset library + +if os_is_darwin +then + # --build=${build_arch}-apple-darwin${os_major_version} + # TODO: allow --languages flag from CLI + # "--enable-languages=c,c++,objc,obj-c++,fortran" + configure_flags+=("--enable-fully-dynamic-string" "--enable-languages=c,objc,fortran") +fi diff --git a/gcc/modules/shell/modules b/gcc/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/gcc/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/ghc/CHANGELOG.md b/ghc/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/ghc/README.md b/ghc/README.md new file mode 100644 index 0000000..6c79bc8 --- /dev/null +++ b/ghc/README.md @@ -0,0 +1,2 @@ +# Extension Template + diff --git a/ghc/TODO.md b/ghc/TODO.md new file mode 100644 index 0000000..e69de29 diff --git a/ghc/VERSION b/ghc/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/ghc/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/ghc/actions/help b/ghc/actions/help new file mode 100755 index 0000000..462d3f4 --- /dev/null +++ b/ghc/actions/help @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "install" "Installs ${package_name} ${package_version}." +action "uninstall" "Uninstalls ${package_name} ${package_version}." + +show_help usage + diff --git a/ghc/config/defaults b/ghc/config/defaults new file mode 100644 index 0000000..b4030cd --- /dev/null +++ b/ghc/config/defaults @@ -0,0 +1,2 @@ +version=7.0.2 +archive_format=tar.bz2 diff --git a/ghc/config/md5 b/ghc/config/md5 new file mode 100644 index 0000000..e4c5a5f --- /dev/null +++ b/ghc/config/md5 @@ -0,0 +1 @@ +#ghc-7.0.2-src.tar.bz2= diff --git a/ghc/modules/shell/dsl b/ghc/modules/shell/dsl new file mode 100644 index 0000000..b143c48 --- /dev/null +++ b/ghc/modules/shell/dsl @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +# +# Before building, +# echo "EXTRA_CABAL_CONFIGURE_FLAGS = --extra-include-dirs=${prefix_path}/include --extra-lib-dirs=${prefix_path}/lib" \ +# >> "mk/build.mk" +# + diff --git a/ghc/modules/shell/initialize b/ghc/modules/shell/initialize new file mode 100644 index 0000000..f3409ec --- /dev/null +++ b/ghc/modules/shell/initialize @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +package_definition \ + base_url "http://haskell.org/ghc/dist/${package_version}" \ + file "${package_name}-${package_version}-src.${archive_format}" + +# +# http://haskell.org/ghc/download_ghc_7_0_2#distros +# +# haskell-platform +# http://lambda.galois.com/hp-tmp/2011.2.0.0/haskell-platform-2011.2.0.0.tar.gz +# diff --git a/ghc/modules/shell/modules b/ghc/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/ghc/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/go/CHANGELOG.md b/go/CHANGELOG.md new file mode 100644 index 0000000..83160d5 --- /dev/null +++ b/go/CHANGELOG.md @@ -0,0 +1,4 @@ +# BDSM Extension Change Log + +* 0.0.1 - Initial Extension Release + diff --git a/go/README.md b/go/README.md new file mode 100644 index 0000000..e992555 --- /dev/null +++ b/go/README.md @@ -0,0 +1,4 @@ +# Extension README + +This extension installs the go programming language. + diff --git a/go/TODO.md b/go/TODO.md new file mode 100644 index 0000000..3126ae4 --- /dev/null +++ b/go/TODO.md @@ -0,0 +1,4 @@ +# Extension TODO List + +* TODO: Package and release the extension. + diff --git a/go/VERSION b/go/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/go/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/go/actions/help b/go/actions/help new file mode 100755 index 0000000..6557d14 --- /dev/null +++ b/go/actions/help @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "help" "Display help for ${extension}." + +show_help usage diff --git a/go/config/defaults b/go/config/defaults new file mode 100644 index 0000000..23ac460 --- /dev/null +++ b/go/config/defaults @@ -0,0 +1 @@ +version=head diff --git a/go/config/md5 b/go/config/md5 new file mode 100644 index 0000000..c28ecee --- /dev/null +++ b/go/config/md5 @@ -0,0 +1,2 @@ +# The format for this file is: ${downloaded file name}=${md5 sum}, For example, +#bash-4.2.tar.gz=3fb927c7c33022f1c327f14a81c0d4b0 diff --git a/go/modules/shell/dsl b/go/modules/shell/dsl new file mode 100644 index 0000000..6c91423 --- /dev/null +++ b/go/modules/shell/dsl @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +go_fetch() +{ + enter "${source_path}" + if command_exists hg + then + remove_paths "${source_path}/${package_dir}" + ensure_paths_exist "${source_path}" + enter "${source_path}" + #TODO: use fetch_uri !!! + hg clone -u release https://go.googlecode.com/hg/ "${source_path}/${package_dir}" + else + error "go requires mercurial, please install the mercurial bdsm package first." + fi +} + +go_build() +{ + export GOROOT="${source_path}/${package_dir}" + enter "${source_path}/${package_dir}/src" + ./all.bash +} + +go_install() +{ + local _path _paths _file _files + + enter "${source_path}/${package_dir}" + + for dir in pkg lib include bin misc src + do + _paths=($( find "${source_path}/${package_dir}/${dir}" -type d )) + for _path in "${_paths[@]}" + do + ensure_paths_exist "${install_path}${_path##${source_path}/${package_dir}}" + done + + _files=($( find "${source_path}/${package_dir}/${dir}" -type f )) + for _file in "${_files[@]}" + do + cp -f "${_file}" "${install_path}${_file##${source_path}/${package_dir}}" + done + done +} + diff --git a/go/modules/shell/modules b/go/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/go/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/lua/CHANGELOG.md b/lua/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/lua/README.md b/lua/README.md new file mode 100644 index 0000000..6c79bc8 --- /dev/null +++ b/lua/README.md @@ -0,0 +1,2 @@ +# Extension Template + diff --git a/lua/TODO.md b/lua/TODO.md new file mode 100644 index 0000000..e69de29 diff --git a/lua/VERSION b/lua/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/lua/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/lua/actions/help b/lua/actions/help new file mode 100755 index 0000000..451d8c2 --- /dev/null +++ b/lua/actions/help @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "package install" "Installs ${package_name} ${package_version}." +action "package uninstall" "Installs ${package_name} ${package_version}." + +show_help usage + diff --git a/lua/config/defaults b/lua/config/defaults new file mode 100644 index 0000000..7d5a349 --- /dev/null +++ b/lua/config/defaults @@ -0,0 +1,2 @@ +version=5.2.0-alpha +base_url=http://www.lua.org/work diff --git a/lua/config/md5 b/lua/config/md5 new file mode 100644 index 0000000..f054121 --- /dev/null +++ b/lua/config/md5 @@ -0,0 +1 @@ +lua-5.2.0-alpha.tar.gz=1c4a4aaa04e0cb658507d3aa1ee80825 diff --git a/lua/modules/shell/dsl b/lua/modules/shell/dsl new file mode 100644 index 0000000..fdcde44 --- /dev/null +++ b/lua/modules/shell/dsl @@ -0,0 +1,33 @@ +#!/usr/bin/env bash + +lua_build() +{ + log "Building ${package_name} ${package_version}" + # Override make command based on platform type. + if os_is_linux + then + make linux + elif os_is_darwin + then + make darwin + elif os_is_solaris + then + make solaris + elif os_is_aix + then + make aix + else # posix... + make posix + fi +} + +lua_install() +{ + log "Installing ${package_name} ${package_version}" + ( + enter "src/" + copy_files to "${install_path}/bin" lua luac mode 0755 + ) + + # TODO: Do we want any of the library files? +} diff --git a/lua/modules/shell/initialize b/lua/modules/shell/initialize new file mode 100644 index 0000000..1699d3b --- /dev/null +++ b/lua/modules/shell/initialize @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +true "${package_dir:="${package_name}-${package_version}"}" + diff --git a/lua/modules/shell/modules b/lua/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/lua/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/perl/CHANGELOG.md b/perl/CHANGELOG.md new file mode 100644 index 0000000..9222382 --- /dev/null +++ b/perl/CHANGELOG.md @@ -0,0 +1,4 @@ +# BDSM Extension Change Log + +* 0.0.1 - Initial Perl Extension Release + diff --git a/perl/README.md b/perl/README.md new file mode 100644 index 0000000..b82221e --- /dev/null +++ b/perl/README.md @@ -0,0 +1,4 @@ +# BDSM Extension README + +This extension manages Perl installations. + diff --git a/perl/TODO.md b/perl/TODO.md new file mode 100644 index 0000000..a72aed8 --- /dev/null +++ b/perl/TODO.md @@ -0,0 +1,3 @@ +# BDSM Extension TODO List + +* TODO: Package and release the extension. diff --git a/perl/VERSION b/perl/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/perl/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/perl/actions/help b/perl/actions/help new file mode 100755 index 0000000..08d7a2c --- /dev/null +++ b/perl/actions/help @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "package install" "Installs ${package_name} ${package_version}." +action "package uninstall" "Installs ${package_name} ${package_version}." + +show_help diff --git a/perl/config/defaults b/perl/config/defaults new file mode 100644 index 0000000..1ce3ee0 --- /dev/null +++ b/perl/config/defaults @@ -0,0 +1,3 @@ +version=5.12.3 +base_url=http://www.cpan.org/src +archive_format=tar.bz2 diff --git a/perl/config/md5 b/perl/config/md5 new file mode 100644 index 0000000..bf0d9ee --- /dev/null +++ b/perl/config/md5 @@ -0,0 +1 @@ +perl-5.12.3.tar.bz2=72f3f7e1c700e79bbf9d9279ca5b42d9 diff --git a/perl/modules/shell/cli b/perl/modules/shell/cli new file mode 100644 index 0000000..7701006 --- /dev/null +++ b/perl/modules/shell/cli @@ -0,0 +1,50 @@ +#!/usr/bin/env bash + +usage() { + printf " + Usage: + + $0 [options] + + options: + + --prefix - specify prefix path + --version - specify version to install + --license - view license + --help - view this usage information + +" + return 0 +} + +number_of_args=${#extension_args[@]} + +for ((index=0 ; index < $number_of_args ; index++)) ; do + + token="${extension_args[$index]}" + + case "$token" in + --prefix) + prefix_path="${extension_args[$((++index))]}" + ;; + --version) + package_version="${extension_args[$((++index))]}" + ;; + --license) + extension_license + exit 0 + ;; + --help) + usage + exit 0 + ;; + --trace) + set -o xtrace + ;; + *) + true # Ignore? + ;; + esac + +done + diff --git a/perl/modules/shell/dsl b/perl/modules/shell/dsl new file mode 100644 index 0000000..eedbeff --- /dev/null +++ b/perl/modules/shell/dsl @@ -0,0 +1,50 @@ +#!/usr/bin/env bash + +# perl-5.12.3$ sh Configure -h +# +#Usage: Configure [-dehrsEKOSV] [-f config.sh] [-D symbol] [-D symbol=value] +# [-U symbol] [-U symbol=] [-A command:symbol...] +# -d : use defaults for all answers. +# -e : go on without questioning past the production of config.sh. +# -f : specify an alternate default configuration file. +# -h : print this help message and exit (with an error status). +# -r : reuse C symbols value if possible (skips costly nm extraction). +# -s : silent mode, only echoes questions and essential information. +# -D : define symbol to have some value: +# -D symbol symbol gets the value 'define' +# -D symbol=value symbol gets the value 'value' +# common used examples (see INSTALL for more info): +# -Duse64bitint use 64bit integers +# -Duse64bitall use 64bit integers and pointers +# -Dusethreads use thread support +# -Dinc_version_list=none do not include older perl trees in @INC +# -DEBUGGING=none DEBUGGING options +# -Dcc=gcc choose your compiler +# -Dprefix=/opt/perl5 choose your destination +# -E : stop at the end of questions, after having produced config.sh. +# -K : do not use unless you know what you are doing. +# -O : let -D and -U override definitions from loaded configuration file. +# -S : perform variable substitutions on all .SH files (can mix with -f) +# -U : undefine symbol: +# -U symbol symbol gets the value 'undef' +# -U symbol= symbol gets completely empty +# e.g.: -Uversiononly +# -A : manipulate symbol after the platform specific hints have been applied: +# -A append:symbol=value append value to symbol +# -A symbol=value like append:, but with a separating space +# -A define:symbol=value define symbol to have value +# -A clear:symbol define symbol to be '' +# -A define:symbol define symbol to be 'define' +# -A eval:symbol=value define symbol to be eval of value +# -A prepend:symbol=value prepend value to symbol +# -A undef:symbol define symbol to be 'undef' +# -A undef:symbol= define symbol to be '' +# e.g.: -A prepend:libswanted='cl pthread ' +# -A ccflags=-DSOME_MACRO +# -V : print version number and exit (with a zero status). +# + +perl_configure() +{ + sh Configure -de -Dprefix="${install_path}" +} diff --git a/perl/modules/shell/modules b/perl/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/perl/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/php/CHANGELOG.md b/php/CHANGELOG.md new file mode 100644 index 0000000..83160d5 --- /dev/null +++ b/php/CHANGELOG.md @@ -0,0 +1,4 @@ +# BDSM Extension Change Log + +* 0.0.1 - Initial Extension Release + diff --git a/php/README.md b/php/README.md new file mode 100644 index 0000000..888fab3 --- /dev/null +++ b/php/README.md @@ -0,0 +1,4 @@ +# Extension README + +This extension installs php + diff --git a/php/TODO.md b/php/TODO.md new file mode 100644 index 0000000..3126ae4 --- /dev/null +++ b/php/TODO.md @@ -0,0 +1,4 @@ +# Extension TODO List + +* TODO: Package and release the extension. + diff --git a/php/VERSION b/php/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/php/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/php/actions/help b/php/actions/help new file mode 100755 index 0000000..fcf35b7 --- /dev/null +++ b/php/actions/help @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "package install" "Installs ${package_name} ${package_version}." +action "package uninstall" "Installs ${package_name} ${package_version}." +action "help" "Display help for ${extension}." + +show_help usage diff --git a/php/config/defaults b/php/config/defaults new file mode 100644 index 0000000..25e9a21 --- /dev/null +++ b/php/config/defaults @@ -0,0 +1,3 @@ +version=5.3.6 +base_url=http://www.php.net/distributions +archive_format=tar.bz2 diff --git a/php/config/md5 b/php/config/md5 new file mode 100644 index 0000000..1d23bc5 --- /dev/null +++ b/php/config/md5 @@ -0,0 +1 @@ +php-5.3.6.tar.bz2=2286f5a82a6e8397955a0025c1c2ad98 diff --git a/php/modules/shell/initialize b/php/modules/shell/initialize new file mode 100644 index 0000000..77f5f07 --- /dev/null +++ b/php/modules/shell/initialize @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +package_definition \ + file "php${package_version}.tar.bz2" + diff --git a/php/modules/shell/modules b/php/modules/shell/modules new file mode 100644 index 0000000..35d3586 --- /dev/null +++ b/php/modules/shell/modules @@ -0,0 +1,2 @@ +ext/package +ext/service diff --git a/pypy/CHANGELOG.md b/pypy/CHANGELOG.md new file mode 100644 index 0000000..83160d5 --- /dev/null +++ b/pypy/CHANGELOG.md @@ -0,0 +1,4 @@ +# BDSM Extension Change Log + +* 0.0.1 - Initial Extension Release + diff --git a/pypy/README.md b/pypy/README.md new file mode 100644 index 0000000..f4b2d1b --- /dev/null +++ b/pypy/README.md @@ -0,0 +1,4 @@ +# Extension README + +This extension has the purpose... + diff --git a/pypy/TODO.md b/pypy/TODO.md new file mode 100644 index 0000000..6fb39ec --- /dev/null +++ b/pypy/TODO.md @@ -0,0 +1,9 @@ +# Extension TODO List + +* TODO: Package and release the extension. +* TODO: Write the extension actions +* TODO: Adjust the cli to meet the extensions requirements +* TODO: Write the extension functions +* TODO: Write the extension initialize +* TODO: Write the extension README + diff --git a/pypy/VERSION b/pypy/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/pypy/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/pypy/actions/help b/pypy/actions/help new file mode 100755 index 0000000..6557d14 --- /dev/null +++ b/pypy/actions/help @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "help" "Display help for ${extension}." + +show_help usage diff --git a/pypy/config/defaults b/pypy/config/defaults new file mode 100644 index 0000000..a6ade19 --- /dev/null +++ b/pypy/config/defaults @@ -0,0 +1,3 @@ +version=1.5 +base_url=https://bitbucket.org/pypy/pypy/downloads +archive_format=tar.bz2 diff --git a/pypy/config/md5 b/pypy/config/md5 new file mode 100644 index 0000000..9322c11 --- /dev/null +++ b/pypy/config/md5 @@ -0,0 +1,6 @@ +pypy-1.5-src.tar.bz2=cb9ada2c50666318c3a2863da1fbe487 +pypy-1.5-linux.tar.bz2=08a2c95163c95f91772abb8bf5f8b9cb +pypy-1.5-linux64.tar.bz2=32392b7986eb34cd657d5b6c5d242cc7 +pypy-1.5-osx64.tar.bz2=b1417916bc01ebb9f95c666f5e397fb5 +pypy-1.5-win32.zip=b6cc12bed5e7243ed44aa3430eb14885 +pypy-1.5-src.tar.bz2=cb9ada2c50666318c3a2863da1fbe487 diff --git a/pypy/modules/shell/dependencies b/pypy/modules/shell/dependencies new file mode 100644 index 0000000..ee09bd8 --- /dev/null +++ b/pypy/modules/shell/dependencies @@ -0,0 +1,9 @@ +#pkg-config # to locate libffi files +#zlib # optional zlib module) +#bz2 # optional bz2 module) +#ncurses # optional _minimal_curses module) +#expat1 # optional pyexpat module) +#openssl # optional _ssl module) +#gc-dev # for the Boehm garbage collector: only needed when translating with –opt=0, 1 or size) +#python-sphinx # >= 1.0.7, for optional documentation build +#python-greenlet # optional stackless support in interpreted mode/testing) diff --git a/pypy/modules/shell/dsl b/pypy/modules/shell/dsl new file mode 100644 index 0000000..1fc8c6d --- /dev/null +++ b/pypy/modules/shell/dsl @@ -0,0 +1,58 @@ +#!/usr/bin/env bash + +set_package_type() +{ + if os_is_linux + then + if [[ "$(os_arch_type)" == "x86_64" ]] + then + package_type="linux64" + else + package_type="linux" + fi + elif os_is_darwin + then + package_type="osx64" + else + package_type="src" + fi + + return 0 +} + +pypy_configure() +{ + case "${package_type}" in + src) + package_configure + ;; + *) + true # nothing to do here. + ;; + esac +} + +pypy_build() +{ + case "${package_type}" in + src) + package_configure + ;; + *) + true # nothing to do here. + ;; + esac +} + +pypy_install() +{ + case "${package_type}" in + src) + package_configure + ;; + *) + true # nothing to do here. + ;; + esac +} + diff --git a/pypy/modules/shell/initialize b/pypy/modules/shell/initialize new file mode 100644 index 0000000..6bdadd3 --- /dev/null +++ b/pypy/modules/shell/initialize @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +set_package_type + +package_definition \ + file "${package_name}-${package_version}-${package_type}.tar.bz2" \ + dir "${package_name}-${package_version}-${package_type}" + + diff --git a/pypy/modules/shell/modules b/pypy/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/pypy/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/python/CHANGELOG.md b/python/CHANGELOG.md new file mode 100644 index 0000000..83160d5 --- /dev/null +++ b/python/CHANGELOG.md @@ -0,0 +1,4 @@ +# BDSM Extension Change Log + +* 0.0.1 - Initial Extension Release + diff --git a/python/README.md b/python/README.md new file mode 100644 index 0000000..16c23a9 --- /dev/null +++ b/python/README.md @@ -0,0 +1,4 @@ +# Extension README + +This extension installs the Python programming language (C Reference Version). + diff --git a/python/TODO.md b/python/TODO.md new file mode 100644 index 0000000..3126ae4 --- /dev/null +++ b/python/TODO.md @@ -0,0 +1,4 @@ +# Extension TODO List + +* TODO: Package and release the extension. + diff --git a/python/VERSION b/python/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/python/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/python/actions/help b/python/actions/help new file mode 100755 index 0000000..6557d14 --- /dev/null +++ b/python/actions/help @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "help" "Display help for ${extension}." + +show_help usage diff --git a/python/config/defaults b/python/config/defaults new file mode 100644 index 0000000..f53f6c3 --- /dev/null +++ b/python/config/defaults @@ -0,0 +1,2 @@ +version=3.2.1 +archive_format=tar.bz2 diff --git a/python/config/md5 b/python/config/md5 new file mode 100644 index 0000000..bfc7a0f --- /dev/null +++ b/python/config/md5 @@ -0,0 +1,2 @@ +Python-3.2.1.tar.bz2=f0869ba3f3797aacb1f954ef24c256f3 +Python-2.7.2.tar.bz2=ba7b2f11ffdbf195ee0d111b9455a5bd diff --git a/python/modules/shell/initialize b/python/modules/shell/initialize new file mode 100644 index 0000000..2dcef84 --- /dev/null +++ b/python/modules/shell/initialize @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +package_definition \ + base_url "http://www.python.org/ftp/python/${package_version}" \ + file "Python-${package_version}.tar.bz2" \ + dir "Python-${package_version}" + diff --git a/python/modules/shell/modules b/python/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/python/modules/shell/modules @@ -0,0 +1 @@ +ext/package diff --git a/ruby/CHANGELOG.md b/ruby/CHANGELOG.md new file mode 100644 index 0000000..83160d5 --- /dev/null +++ b/ruby/CHANGELOG.md @@ -0,0 +1,4 @@ +# BDSM Extension Change Log + +* 0.0.1 - Initial Extension Release + diff --git a/ruby/README.md b/ruby/README.md new file mode 100644 index 0000000..71ab5a4 --- /dev/null +++ b/ruby/README.md @@ -0,0 +1,4 @@ +# BDSM Extension README + +Installs MRI Ruby interpreters. + diff --git a/ruby/TODO.md b/ruby/TODO.md new file mode 100644 index 0000000..a72aed8 --- /dev/null +++ b/ruby/TODO.md @@ -0,0 +1,3 @@ +# BDSM Extension TODO List + +* TODO: Package and release the extension. diff --git a/ruby/VERSION b/ruby/VERSION new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/ruby/VERSION @@ -0,0 +1 @@ +0.0.1 diff --git a/ruby/actions/help b/ruby/actions/help new file mode 100755 index 0000000..44738f3 --- /dev/null +++ b/ruby/actions/help @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +description "${extension} BDSM extension." + +action "package install" "Installs ${package_name} ${package_version}." +action "package uninstall" "Installs ${package_name} ${package_version}." + +action "setup" "Setup and Configure $extension." + +show_help usage diff --git a/ruby/config/defaults b/ruby/config/defaults new file mode 100644 index 0000000..2145e33 --- /dev/null +++ b/ruby/config/defaults @@ -0,0 +1,2 @@ +version=1.9.2-p180 +archive_format=tar.bz2 diff --git a/ruby/config/md5 b/ruby/config/md5 new file mode 100644 index 0000000..a8940aa --- /dev/null +++ b/ruby/config/md5 @@ -0,0 +1,6 @@ +ruby-1.9.2.tar.bz2=09160022b4ddceb10e470198c87b3d49 +ruby-1.9.2-p180.tar.bz2=68510eeb7511c403b91fe5476f250538 +ruby-1.9.2-p136.tar.bz2=52958d35d1b437f5d9d225690de94c13 +ruby-1.9.2-p0.tar.bz2=d8a02cadf57d2571cd4250e248ea7e4b +ruby-1.8.7-p334.tar.bz2=2f14f604bf981bb938ab5fc8b09eb1a6 +ruby-1.8.7-p330.tar.bz2=2689719fb42c8cf0aa336f8c8933f413 diff --git a/ruby/modules/shell/initialize b/ruby/modules/shell/initialize new file mode 100644 index 0000000..7fdf889 --- /dev/null +++ b/ruby/modules/shell/initialize @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +package_definition \ + base_url "http://ftp.ruby-lang.org/pub/ruby/${package_version%.*}" + +# static? +# package_dependencies=(openssl iconv readline zlib) + diff --git a/ruby/modules/shell/modules b/ruby/modules/shell/modules new file mode 100644 index 0000000..93019ba --- /dev/null +++ b/ruby/modules/shell/modules @@ -0,0 +1 @@ +ext/package