mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-24 10:02:29 +01:00
develpoment/google-appengine-gosdk: Added (Google Appengine Go SDK)
Signed-off-by: dsomero <xgizzmo@slackbuilds.org>
This commit is contained in:
parent
f9000ce256
commit
915e263d03
9 changed files with 181 additions and 0 deletions
45
development/google-appengine-gosdk/README
Normal file
45
development/google-appengine-gosdk/README
Normal file
|
@ -0,0 +1,45 @@
|
|||
Google App Engine Go Language SDK
|
||||
|
||||
The Go SDK's includes a web server application that simulates the AppEngine
|
||||
environment, including a local version of the datastore, Google Accounts, and
|
||||
the ability to fetch URLs and send email directly from your computer using the
|
||||
App Engine APIs. The Go SDK uses slightly modified versions of the development
|
||||
tools from the Python SDK, and will run on any Intel-based Mac OS X or Linux
|
||||
computer with Python 2.5.
|
||||
|
||||
Homepage: http://code.google.com/appengine
|
||||
|
||||
Alternate download site - Project site: http://code.google.com/p/googleappengine
|
||||
|
||||
NOTE: There are some minor limitations to the Go SDK for App Engine vs the full
|
||||
blown Go Language SDK, but for most part this package can be used to develop and
|
||||
compile stand-alone Go programs as well. See The Go Programming Language Blog,
|
||||
Tuesday, May 10, 2011, Go and Google Appengine at
|
||||
http://blog.golang.org/2011/05/go-and-google-app-engine.html for more details.
|
||||
|
||||
WARNING: This SlackBuild puts the Google Appengine Go SDK tools onto your PATH
|
||||
using the script gae.sh (or gae.csh) in /etc/profile.d that is sourced by
|
||||
/etc/profile (or /etc/csh.login). If you also install the Google Appengine
|
||||
Python SDK then the gae.sh (and gae.csh) scripts will clash and you'll be left
|
||||
with a gae.sh.new (and gae.csh.new) file in /etc/profile.d.
|
||||
|
||||
THIS IS INTENTIONAL!!!
|
||||
|
||||
This is because Google's Go and Python SDK's for Appengine contain Python
|
||||
scripts with the same names that are different: you cannot use, for example, the
|
||||
appcfg.py or dev_appserver.py from one SDK on apps written with the other SDK!
|
||||
|
||||
It is up to you to sort out this mess and decide which - if any - SDK's tools
|
||||
you want on the PATH and which you'll call with the full path. I had written
|
||||
some wrapper scripts (inspired by Google's own gomake script) that work around
|
||||
this issue; but I felt this solution was more appropriate for Slackware and
|
||||
absolved me of the responsability of untangling Google's mess!
|
||||
|
||||
AND ANOTHER WARNING: If you also install the Google Go language SlackBuild
|
||||
you'll have another clash since the Appengine Go SDK contains a subset of the Go
|
||||
language SDK; it has some of the same tools and relies on the same environment
|
||||
variables (in particular GOROOT). So you need decide if you want to keep the Go
|
||||
Appengine on your PATH or the Go Language (via /etc/profile.d/go.sh and
|
||||
/etc/profile.d/go.csh).
|
||||
|
||||
Sorry, but I don't write 'em - I just build 'em!
|
17
development/google-appengine-gosdk/doinst.sh
Normal file
17
development/google-appengine-gosdk/doinst.sh
Normal file
|
@ -0,0 +1,17 @@
|
|||
config() {
|
||||
NEW="$1"
|
||||
OLD="$(dirname $NEW)/$(basename $NEW .new)"
|
||||
# If there's no config file by that name, mv it over:
|
||||
if [ ! -r $OLD ]; then
|
||||
mv $NEW $OLD
|
||||
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
|
||||
# toss the redundant copy
|
||||
rm $NEW
|
||||
fi
|
||||
# Otherwise, we leave the .new copy for the admin to consider...
|
||||
}
|
||||
|
||||
config etc/profile.d/gae.csh.new
|
||||
config etc/profile.d/gae.sh.new
|
||||
config etc/profile.d/go.csh.new
|
||||
config etc/profile.d/go.sh.new
|
3
development/google-appengine-gosdk/gae.csh
Normal file
3
development/google-appengine-gosdk/gae.csh
Normal file
|
@ -0,0 +1,3 @@
|
|||
#!/bin/csh
|
||||
setenv GAEBIN /opt/google/appengine-gosdk
|
||||
setenv PATH ${PATH}:${GAEROOT}
|
3
development/google-appengine-gosdk/gae.sh
Normal file
3
development/google-appengine-gosdk/gae.sh
Normal file
|
@ -0,0 +1,3 @@
|
|||
#!/bin/csh
|
||||
export GAEBIN=/opt/google/appengine-gosdk
|
||||
export PATH=${PATH}:${GAEROOT}
|
3
development/google-appengine-gosdk/go.csh
Normal file
3
development/google-appengine-gosdk/go.csh
Normal file
|
@ -0,0 +1,3 @@
|
|||
#!/bin/csh
|
||||
setenv GOROOT /opt/google/appengine-gosdk/goroot
|
||||
setenv PATH ${PATH}:${GOROOT}/bin
|
3
development/google-appengine-gosdk/go.sh
Normal file
3
development/google-appengine-gosdk/go.sh
Normal file
|
@ -0,0 +1,3 @@
|
|||
#!/bin/sh
|
||||
export GOROOT=/opt/google/appengine-gosdk/goroot
|
||||
export PATH="${PATH}:${GOROOT}/bin"
|
|
@ -0,0 +1,78 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Slackware build script for google-appengine-gosdk
|
||||
|
||||
# Copyright (c) 2011 Eric Schultz
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
# this software and associated documentation files (the "Software"), to deal in
|
||||
# the Software without restriction, including without limitation the rights to
|
||||
# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
# the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
# subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in all
|
||||
# copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
# Written by Eric Schultz eric at schultzter dot ca
|
||||
|
||||
PRGNAM=google-appengine-gosdk
|
||||
VERSION=${VERSION:-1.6.5}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
if [ -z "$ARCH" -a -z "$GOARCH" ]; then
|
||||
case "$( uname -m )" in
|
||||
i?86) ARCH="i486" ; GARCH="386" ;;
|
||||
x86_64) ARCH="x86_64"; GARCH="amd64" ;;
|
||||
*) echo "Package for $(uname -m) architecture is not available." ; exit 1;;
|
||||
esac
|
||||
fi
|
||||
|
||||
CWD=$(pwd)
|
||||
TMP=${TMP:-/tmp/SBo}
|
||||
PKG=$TMP/package-$PRGNAM
|
||||
OUTPUT=${OUTPUT:-/tmp}
|
||||
|
||||
set -e
|
||||
|
||||
rm -rf $PKG
|
||||
mkdir -p $TMP $PKG/opt/google $OUTPUT
|
||||
cd $PKG/opt/google
|
||||
unzip $CWD/go_appengine_sdk_linux_$GARCH-$VERSION.zip
|
||||
mv google_appengine appengine-gosdk
|
||||
chown -R root:root .
|
||||
find . \
|
||||
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 750 -o -perm 555 -o -perm 511 \) \
|
||||
-exec chmod 755 {} \; -o \
|
||||
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 -o -perm 645 -o -perm 640 \) \
|
||||
-exec chmod 644 {} \;
|
||||
|
||||
# Put the profile scripts for setting PATH and env variables
|
||||
mkdir -p $PKG/etc/profile.d
|
||||
install -m0755 -oroot $CWD/gae.csh $PKG/etc/profile.d/gae.csh.new
|
||||
install -m0755 -oroot $CWD/gae.sh $PKG/etc/profile.d/gae.sh.new
|
||||
install -m0755 -oroot $CWD/go.csh $PKG/etc/profile.d/go.csh.new
|
||||
install -m0755 -oroot $CWD/go.sh $PKG/etc/profile.d/go.sh.new
|
||||
|
||||
cd appengine-gosdk
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp -a \
|
||||
BUGS LICENSE RELEASE_NOTES VERSION \
|
||||
$PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
cp $CWD/doinst.sh $PKG/install/doinst.sh
|
||||
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
|
|
@ -0,0 +1,10 @@
|
|||
PRGNAM="google-appengine-gosdk"
|
||||
VERSION="1.6.5"
|
||||
HOMEPAGE="https://developers.google.com/appengine/"
|
||||
DOWNLOAD="http://googleappengine.googlecode.com/files/go_appengine_sdk_linux_386-1.6.5.zip"
|
||||
MD5SUM="fbf60b682affea6681daa97ea75fcd26"
|
||||
DOWNLOAD_x86_64="http://googleappengine.googlecode.com/files/go_appengine_sdk_linux_amd64-1.6.5.zip"
|
||||
MD5SUM_x86_64="ad31a47853b4f1e0626ae4689cce37fd"
|
||||
MAINTAINER="Eric Schultz"
|
||||
EMAIL="eric at schultzter dot ca"
|
||||
APPROVED="dsomero"
|
19
development/google-appengine-gosdk/slack-desc
Normal file
19
development/google-appengine-gosdk/slack-desc
Normal file
|
@ -0,0 +1,19 @@
|
|||
# HOW TO EDIT THIS FILE:
|
||||
# The "handy ruler" below makes it easier to edit a package description. Line
|
||||
# up the first '|' above the ':' following the base package name, and the '|'
|
||||
# on the right side marks the last column you can put a character in. You must
|
||||
# make exactly 11 lines for the formatting to be correct. It's also
|
||||
# customary to leave one space after the ':'.
|
||||
|
||||
|-----handy-ruler------------------------------------------------------|
|
||||
google-appengine-gosdk: google-appengine-gosdk (Google Appengine Go SDK)
|
||||
google-appengine-gosdk:
|
||||
google-appengine-gosdk: The Go SDK's includes a web server application that simulates
|
||||
google-appengine-gosdk: the AppEngine environment, including a local version of the
|
||||
google-appengine-gosdk: datastore, Google Accounts, and the ability to fetch URLs and
|
||||
google-appengine-gosdk: send email directly from your computer using the App Engine APIs.
|
||||
google-appengine-gosdk: The Go SDK uses slightly modified versions of the development tools
|
||||
google-appengine-gosdk: from the Python SDK, and will run on any Intel-based Mac OS X or
|
||||
google-appengine-gosdk: Linux computer with Python 2.5.
|
||||
google-appengine-gosdk:
|
||||
google-appengine-gosdk: Homepage: http://code.google.com/appengine
|
Loading…
Reference in a new issue