Opened 14 years ago

Last modified 14 years ago

#25658 closed submission

New port: sbt — at Initial Version

Reported by: lists@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.9.1
Keywords: Cc:
Port: sbt

Description

I am attaching a Portfile and file, sbt.sh, for the simple-build-tool (sbt) project.

The Portfile contents are:

# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
# $Id$

PortSystem			1.0

# Note the googlecode project full name.
set project_name "simple-build-tool"

name            	sbt
version         	0.7.4

categories      	devel java
maintainers     	jon.buffington.name:me
platforms       	darwin

description    		Simple build tool (sbt) is designed to simplify building Scala projects.

long_description	Simple build tool (sbt) is provides unintrusive and easy to set up for simple \
					Scala projects. All configuration, customization, and extension are done in Scala. \
					Sbt supports continuous compilation and testing with triggered execution in \
					mixed Scala/Java projects.

homepage		 	http://code.google.com/p/${project_name}/

master_sites		googlecode:${project_name}

checksums         	md5     8903fb141037056a497925f3efdb9edf \
                  	sha1    2b7cfadf05b3b26285bb2038145479741268d334 \
                  	rmd160  19c39da679d05b600fde06acf9acf657a7701f93

depends_build  		bin:java:kaffe

distname			${name}-launch-${version}

# Name the wrapper shell script.
set wrapper "sbt.sh"

extract.suffix		.jar
extract.mkdir		yes
pre-extract {
	file copy ${filespath}/${wrapper} ${worksrcpath}
}

set jarname ${distname}${extract.suffix}

configure {
	reinplace "s|__SBT_LAUNCHER_PATH__|${prefix}/share/${name}/${jarname}|g" ${worksrcpath}/${wrapper}
}

use_configure		no
universal_variant	no
build               {}

destroot {
	set sbtdir "${destroot}${prefix}/share/${name}"

	xinstall -m 755 -d ${sbtdir}
	xinstall -m 644 ${distpath}/${jarname} ${sbtdir}/
	xinstall -m 755 ${worksrcpath}/${wrapper} ${sbtdir}/${name}

	# Symlink sbt into the bin directory.
	system "cd ${destroot}${prefix}/bin && ln -s ${prefix}/share/${name}/${name}"
}

The files/sbt.sh contents are:

#!/bin/sh
#
# Copyright (c) 2007-2009 Jon Buffington. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Is the location of the SBT launcher JAR file.
LAUNCHJAR="__SBT_LAUNCHER_PATH__"

# Capture any arguments
QUOTED_ARGS=""
while [ "$1" != "" ] ; do
	QUOTED_ARGS="$QUOTED_ARGS \"$1\""
	shift
done

# Ensure enough heap space is created for SBT.
if [ -z "$JAVA_OPTS" ]; then
	JAVA_OPTS="-Xmx512M"
fi

# Assume java is already in the shell path.
exec java $JAVA_OPTS -jar "$LAUNCHJAR" $QUOTED_ARGS

Change History (2)

Changed 14 years ago by lists@…

Attachment: Portfile added

sbt Portfile

Changed 14 years ago by lists@…

Attachment: sbt.sh added

files/sbt.sh

Note: See TracTickets for help on using tickets.