pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

nim: Import the Nim programming language as wip/nim.



Module Name:	pkgsrc-wip
Committed By:	Christian Koch <cfkoch%edgebsd.org@localhost>
Pushed By:	cfkoch
Date:		Mon Feb 1 20:10:18 2016 -0800
Changeset:	46dd63f421ee5bd30d086fc12ec99f9bbdb3e2d5

Modified Files:
	Makefile
Added Files:
	nim/DESCR
	nim/Makefile
	nim/PLIST
	nim/distinfo
	nim/patches/patch-install.sh

Log Message:
nim: Import the Nim programming language as wip/nim.

Nim (formerly known as "Nimrod") is a statically typed, imperative
programming language that tries to give the programmer ultimate power
without compromises on runtime efficiency. This means it focuses on
compile-time mechanisms in all their various forms.

Beneath a nice infix/indentation based syntax with a powerful (AST based,
hygienic) macro system lies a semantic model that supports a soft realtime
GC on thread local heaps. Asynchronous message passing is used between
threads, so no "stop the world" mechanism is necessary. An unsafe shared
memory heap is also provided for the increased efficiency that results from
that model.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=46dd63f421ee5bd30d086fc12ec99f9bbdb3e2d5

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                     |   1 +
 nim/DESCR                    |  11 +++
 nim/Makefile                 |  20 +++++
 nim/PLIST                    | 200 +++++++++++++++++++++++++++++++++++++++++++
 nim/distinfo                 |   6 ++
 nim/patches/patch-install.sh |  22 +++++
 6 files changed, 260 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index ec4bbea..c3b989e 100644
--- a/Makefile
+++ b/Makefile
@@ -1992,6 +1992,7 @@ SUBDIR+=	nhc98
 SUBDIR+=	nicotine+
 SUBDIR+=	nightfall
 SUBDIR+=	nih-current
+SUBDIR+=	nim
 SUBDIR+=	ninja-devel
 SUBDIR+=	ninja-ide
 SUBDIR+=	ninka
diff --git a/nim/DESCR b/nim/DESCR
new file mode 100644
index 0000000..063ab39
--- /dev/null
+++ b/nim/DESCR
@@ -0,0 +1,11 @@
+Nim (formerly known as "Nimrod") is a statically typed, imperative
+programming language that tries to give the programmer ultimate power
+without compromises on runtime efficiency. This means it focuses on
+compile-time mechanisms in all their various forms.
+
+Beneath a nice infix/indentation based syntax with a powerful (AST based,
+hygienic) macro system lies a semantic model that supports a soft realtime
+GC on thread local heaps. Asynchronous message passing is used between
+threads, so no "stop the world" mechanism is necessary. An unsafe shared
+memory heap is also provided for the increased efficiency that results from
+that model.
diff --git a/nim/Makefile b/nim/Makefile
new file mode 100644
index 0000000..7249c85
--- /dev/null
+++ b/nim/Makefile
@@ -0,0 +1,20 @@
+# $NetBSD$
+
+DISTNAME=	nim-0.13.0
+CATEGORIES=	lang
+MASTER_SITES=	http://nim-lang.org/download/
+EXTRACT_SUFX=	.tar.xz
+LICENSE=	mit
+
+MAINTAINER=	cfkoch%edgebsd.org@localhost
+COMMENT=	The Nim programming language
+
+NO_CONFIGURE=	yes
+
+do-build:
+	cd ${WRKSRC} && sh ./build.sh
+
+do-install:
+	cd ${WRKSRC} && sh ./install.sh ${DESTDIR}${PREFIX}
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/nim/PLIST b/nim/PLIST
new file mode 100644
index 0000000..58f3a42
--- /dev/null
+++ b/nim/PLIST
@@ -0,0 +1,200 @@
+@comment $NetBSD$
+bin/nim
+lib/nim/core/locks.nim
+lib/nim/core/macros.nim
+lib/nim/core/typeinfo.nim
+lib/nim/deprecated/core/unsigned.nim
+lib/nim/deprecated/pure/actors.nim
+lib/nim/deprecated/pure/actors.nim.cfg
+lib/nim/deprecated/pure/asyncio.nim
+lib/nim/deprecated/pure/ftpclient.nim
+lib/nim/deprecated/pure/parseurl.nim
+lib/nim/deprecated/pure/rawsockets.nim
+lib/nim/deprecated/pure/sockets.nim
+lib/nim/impure/db_mysql.nim
+lib/nim/impure/db_odbc.nim
+lib/nim/impure/db_postgres.nim
+lib/nim/impure/db_sqlite.nim
+lib/nim/impure/nre.nim
+lib/nim/impure/nre/private/util.nim
+lib/nim/impure/osinfo_posix.nim
+lib/nim/impure/osinfo_win.nim
+lib/nim/impure/rdstdin.nim
+lib/nim/impure/re.nim
+lib/nim/impure/ssl.nim
+lib/nim/js/dom.nim
+lib/nim/nimbase.h
+lib/nim/nimrtl.nim
+lib/nim/nimrtl.nim.cfg
+lib/nim/packages/docutils/highlite.nim
+lib/nim/packages/docutils/rst.nim
+lib/nim/packages/docutils/rstast.nim
+lib/nim/packages/docutils/rstgen.nim
+lib/nim/posix/epoll.nim
+lib/nim/posix/inotify.nim
+lib/nim/posix/kqueue.nim
+lib/nim/posix/linux.nim
+lib/nim/posix/posix.nim
+lib/nim/posix/termios.nim
+lib/nim/prelude.nim
+lib/nim/pure/algorithm.nim
+lib/nim/pure/asyncdispatch.nim
+lib/nim/pure/asyncdispatch.nim.cfg
+lib/nim/pure/asyncfile.nim
+lib/nim/pure/asyncftpclient.nim
+lib/nim/pure/asynchttpserver.nim
+lib/nim/pure/asyncnet.nim
+lib/nim/pure/base64.nim
+lib/nim/pure/basic2d.nim
+lib/nim/pure/basic3d.nim
+lib/nim/pure/browsers.nim
+lib/nim/pure/cgi.nim
+lib/nim/pure/collections/LockFreeHash.nim
+lib/nim/pure/collections/critbits.nim
+lib/nim/pure/collections/intsets.nim
+lib/nim/pure/collections/lists.nim
+lib/nim/pure/collections/queues.nim
+lib/nim/pure/collections/rtarrays.nim
+lib/nim/pure/collections/sequtils.nim
+lib/nim/pure/collections/sets.nim
+lib/nim/pure/collections/sharedlist.nim
+lib/nim/pure/collections/sharedstrings.nim
+lib/nim/pure/collections/sharedtables.nim
+lib/nim/pure/collections/tableimpl.nim
+lib/nim/pure/collections/tables.nim
+lib/nim/pure/colors.nim
+lib/nim/pure/complex.nim
+lib/nim/pure/concurrency/cpuinfo.nim
+lib/nim/pure/concurrency/cpuload.nim
+lib/nim/pure/concurrency/threadpool.nim
+lib/nim/pure/concurrency/threadpool.nim.cfg
+lib/nim/pure/cookies.nim
+lib/nim/pure/coro.nim
+lib/nim/pure/db_common.nim
+lib/nim/pure/dynlib.nim
+lib/nim/pure/encodings.nim
+lib/nim/pure/endians.nim
+lib/nim/pure/etcpriv.nim
+lib/nim/pure/events.nim
+lib/nim/pure/fenv.nim
+lib/nim/pure/fsmonitor.nim
+lib/nim/pure/future.nim
+lib/nim/pure/gentabs.nim
+lib/nim/pure/hashes.nim
+lib/nim/pure/htmlgen.nim
+lib/nim/pure/htmlparser.nim
+lib/nim/pure/httpclient.nim
+lib/nim/pure/httpserver.nim
+lib/nim/pure/json.nim
+lib/nim/pure/lexbase.nim
+lib/nim/pure/logging.nim
+lib/nim/pure/marshal.nim
+lib/nim/pure/matchers.nim
+lib/nim/pure/math.nim
+lib/nim/pure/md5.nim
+lib/nim/pure/memfiles.nim
+lib/nim/pure/mersenne.nim
+lib/nim/pure/mimetypes.nim
+lib/nim/pure/nativesockets.nim
+lib/nim/pure/net.nim
+lib/nim/pure/nimprof.nim
+lib/nim/pure/nimprof.nim.cfg
+lib/nim/pure/numeric.nim
+lib/nim/pure/oids.nim
+lib/nim/pure/options.nim
+lib/nim/pure/os.nim
+lib/nim/pure/ospaths.nim
+lib/nim/pure/osproc.nim
+lib/nim/pure/oswalkdir.nim
+lib/nim/pure/parsecfg.nim
+lib/nim/pure/parsecsv.nim
+lib/nim/pure/parseopt.nim
+lib/nim/pure/parseopt2.nim
+lib/nim/pure/parsesql.nim
+lib/nim/pure/parseutils.nim
+lib/nim/pure/parsexml.nim
+lib/nim/pure/pegs.nim
+lib/nim/pure/poly.nim
+lib/nim/pure/rationals.nim
+lib/nim/pure/romans.nim
+lib/nim/pure/ropes.nim
+lib/nim/pure/scgi.nim
+lib/nim/pure/securehash.nim
+lib/nim/pure/selectors.nim
+lib/nim/pure/smtp.nim
+lib/nim/pure/smtp.nim.cfg
+lib/nim/pure/stats.nim
+lib/nim/pure/streams.nim
+lib/nim/pure/strtabs.nim
+lib/nim/pure/strutils.nim
+lib/nim/pure/subexes.nim
+lib/nim/pure/terminal.nim
+lib/nim/pure/times.nim
+lib/nim/pure/typetraits.nim
+lib/nim/pure/unicode.nim
+lib/nim/pure/unidecode/unidecode.nim
+lib/nim/pure/unittest.nim
+lib/nim/pure/uri.nim
+lib/nim/pure/xmldom.nim
+lib/nim/pure/xmldomparser.nim
+lib/nim/pure/xmlparser.nim
+lib/nim/pure/xmltree.nim
+lib/nim/stdlib.nimble
+lib/nim/system.nim
+lib/nim/system/alloc.nim
+lib/nim/system/ansi_c.nim
+lib/nim/system/arithm.nim
+lib/nim/system/assign.nim
+lib/nim/system/atomics.nim
+lib/nim/system/avltree.nim
+lib/nim/system/cellsets.nim
+lib/nim/system/cgprocs.nim
+lib/nim/system/channels.nim
+lib/nim/system/chcks.nim
+lib/nim/system/debugger.nim
+lib/nim/system/deepcopy.nim
+lib/nim/system/dyncalls.nim
+lib/nim/system/embedded.nim
+lib/nim/system/endb.nim
+lib/nim/system/excpt.nim
+lib/nim/system/gc.nim
+lib/nim/system/gc2.nim
+lib/nim/system/gc_common.nim
+lib/nim/system/gc_ms.nim
+lib/nim/system/hti.nim
+lib/nim/system/inclrtl.nim
+lib/nim/system/jssys.nim
+lib/nim/system/mmdisp.nim
+lib/nim/system/nimscript.nim
+lib/nim/system/platforms.nim
+lib/nim/system/profiler.nim
+lib/nim/system/repr.nim
+lib/nim/system/reprjs.nim
+lib/nim/system/sets.nim
+lib/nim/system/sysio.nim
+lib/nim/system/syslocks.nim
+lib/nim/system/sysspawn.nim
+lib/nim/system/sysstr.nim
+lib/nim/system/threads.nim
+lib/nim/system/timers.nim
+lib/nim/system/widestrs.nim
+lib/nim/windows/winlean.nim
+lib/nim/wrappers/iup.nim
+lib/nim/wrappers/joyent_http_parser.nim
+lib/nim/wrappers/libsvm.nim
+lib/nim/wrappers/libuv.nim
+lib/nim/wrappers/linenoise/clinenoise.c
+lib/nim/wrappers/linenoise/clinenoise.h
+lib/nim/wrappers/linenoise/linenoise.nim
+lib/nim/wrappers/mysql.nim
+lib/nim/wrappers/odbcsql.nim
+lib/nim/wrappers/openssl.nim
+lib/nim/wrappers/pcre.nim
+lib/nim/wrappers/pdcurses.nim
+lib/nim/wrappers/postgres.nim
+lib/nim/wrappers/sqlite3.nim
+lib/nim/wrappers/tinyc.nim
+share/doc/nim/overview.html
+share/nim/config/nim.cfg
+share/nim/config/nimdoc.cfg
+share/nim/config/nimdoc.tex.cfg
diff --git a/nim/distinfo b/nim/distinfo
new file mode 100644
index 0000000..19114ff
--- /dev/null
+++ b/nim/distinfo
@@ -0,0 +1,6 @@
+$NetBSD$
+
+SHA1 (nim-0.13.0.tar.xz) = 88450e9ffcc65625450c25e1ef73ebfb3c348955
+RMD160 (nim-0.13.0.tar.xz) = 03629c1b9be1df541023b170adc79a893382980a
+Size (nim-0.13.0.tar.xz) = 3145360 bytes
+SHA1 (patch-install.sh) = 9d19e3c7b7b5b5dce35ea2e3a8309877f6dc8691
diff --git a/nim/patches/patch-install.sh b/nim/patches/patch-install.sh
new file mode 100644
index 0000000..143a2c4
--- /dev/null
+++ b/nim/patches/patch-install.sh
@@ -0,0 +1,22 @@
+# $NetBSD$
+--- ./install.sh.orig	2016-02-01 19:35:39.000000000 -0800
++++ ./install.sh	2016-02-01 19:43:27.000000000 -0800
+@@ -39,13 +39,12 @@
+       datadir=/usr/local/share/nim/data
+       ;;
+     *)
+-      bindir="$1/nim/bin"
+-      configdir="$1/nim/config"
+-      libdir="$1/nim/lib"
+-      docdir="$1/nim/doc"
+-      datadir="$1/nim/data"
++      bindir="$1/bin"
++      configdir="$1/share/nim/config"
++      libdir="$1/lib/nim"
++      docdir="$1/share/doc/nim"
++      datadir="$1/share/nim/data"
+       
+-      mkdir -p $1/nim
+       mkdir -p $bindir
+       mkdir -p $configdir
+       ;;


Home | Main Index | Thread Index | Old Index