Skip to content

Commit

Permalink
Release v5.1.0.
Browse files Browse the repository at this point in the history
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
  • Loading branch information
gvvaughan committed Dec 17, 2014
1 parent 4483ccb commit e0a5403
Show file tree
Hide file tree
Showing 14 changed files with 433 additions and 221 deletions.
171 changes: 110 additions & 61 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,74 +1,123 @@
# Lua is not officially supported, but an erlang environment will do.
language: erlang
language: c

env:
global:
- PACKAGE=lyaml
- ROCKSPEC=$PACKAGE-git-1.rockspec
- LUAROCKS_CONFIG=build-aux/luarocks-config.lua
- LUAROCKS_BASE=luarocks-2.2.0
- LUAROCKS="$LUA $HOME/bin/luarocks"
- COMPILE="libtool --mode=compile --tag=CC gcc"
- CFLAGS="-O2 -Wall -DLUA_COMPAT_ALL -DLUA_USE_LINUX"
- INSTALL="libtool --mode=install install -p"
- LINK="libtool --mode=link --tag=CC gcc"
- LIBS="-lm -Wl,-E -ldl -lreadline"

- ROCKSPEC=lyaml-git-1.rockspec

- prefix=/usr/local
- bindir=$prefix/bin
- incdir=$prefix/include
- libdir=$prefix/lib
matrix:
- LUA=lua5.1 LUA_INCDIR=/usr/include/lua5.1 LUA_SUFFIX=5.1
- LUA=lua5.2 LUA_INCDIR=/usr/include/lua5.2 LUA_SUFFIX=5.2
- LUA=luajit-2.0.0-beta9 LUA_INCDIR=/usr/include/luajit-2.0 LUA_SUFFIX=5.1
- LUA=lua5.3
- LUA=lua5.2
- LUA=lua5.1
- LUA=luajit

# Tool setup.
install:

before_install:
# Put back the links for libyaml, which are missing on recent Travis VMs
- test -f /usr/lib/libyaml.so ||
sudo find /usr/lib -name 'libyaml*' -exec ln -s {} /usr/lib \;

- sudo apt-get install help2man
- sudo apt-get install luajit
- sudo apt-get install libluajit-5.1-dev
- sudo apt-get install lua5.1
- sudo apt-get install liblua5.1-dev
- sudo apt-get install lua5.2
- sudo apt-get install liblua5.2-dev

# Install a recent luarocks release locally for everything else.
- wget http://luarocks.org/releases/$LUAROCKS_BASE.tar.gz
- tar zxvpf $LUAROCKS_BASE.tar.gz
# LuaRocks configure --with-lua argument is just a prefix!
- ( cd $LUAROCKS_BASE;
./configure
--prefix=$HOME --with-lua=/usr --lua-version=$LUA_SUFFIX
--lua-suffix=$LUA_SUFFIX --with-lua-include=$LUA_INCDIR;
make build;
make install; )

# Configure and build.
script:
# Initial bootstrap to build luarocks-config.lua, before we've
# installed our rocks.
- ./bootstrap --skip-rock-checks

# Fetch Lua sources.
- cd $TRAVIS_BUILD_DIR
- 'if test lua5.3 = "$LUA"; then
curl http://www.lua.org/work/lua-5.3.0-rc1.tar.gz | tar xz;
cd lua-5.3.0;
fi'
- 'if test lua5.2 = "$LUA"; then
curl http://www.lua.org/ftp/lua-5.2.3.tar.gz | tar xz;
cd lua-5.2.3;
fi'
- 'if test lua5.1 = "$LUA"; then
curl http://www.lua.org/ftp/lua-5.1.5.tar.gz | tar xz;
cd lua-5.1.5;
fi'

# Unpack, compile and install Lua.
- 'if test luajit = "$LUA"; then
curl http://luajit.org/download/LuaJIT-2.0.3.tar.gz | tar xz;
cd LuaJIT-2.0.3;
make && sudo make install;
for header in lua.h luaconf.h lualib.h lauxlib.h luajit.h lua.hpp; do
if test -f /usr/local/include/luajit-2.0/$header; then
sudo ln -s /usr/local/include/luajit-2.0/$header /usr/local/include/$header;
fi;
done;
else
for src in src/*.c; do
test src/lua.c = "$src" || test src/luac.c = "$src" || eval $COMPILE $CFLAGS -c $src;
done;
eval $LINK -o lib$LUA.la -version-info 0:0:0 -rpath $libdir *.lo;
sudo mkdir -p $libdir;
eval sudo $INSTALL lib$LUA.la $libdir/lib$LUA.la;
eval $COMPILE $CFLAGS -c src/lua.c;
eval $LINK -static -o $LUA lua.lo lib$LUA.la $LIBS;
sudo mkdir -p $bindir;
eval sudo $INSTALL $LUA $bindir/$LUA;
sudo mkdir -p $incdir;
for header in lua.h luaconf.h lualib.h lauxlib.h lua.hpp; do
if test -f src/$header; then
eval sudo $INSTALL src/$header $incdir/$header;
fi;
done;
fi'

# Fetch LuaRocks.
- cd $TRAVIS_BUILD_DIR
- 'git clone https://github.com/keplerproject/luarocks.git luarocks-2.2.0'
- cd luarocks-2.2.0
- git checkout v2.2.0

# Compile and install luarocks.
- if test luajit = "$LUA"; then
./configure --lua-suffix=jit;
else
./configure;
fi
- 'make build && sudo make install'

# Tidy up file droppings.
- cd $TRAVIS_BUILD_DIR
- rm -rf lua-5.3.0 lua-5.2.3 lua-5.1.5 luarocks-2.2.0


install:
- sudo luarocks install specl;

# Initial bootstrap to generate Makefile for rockspecs.
- ./bootstrap
- ./configure LUA="$LUA"
- make $LUAROCKS_CONFIG
LUA="$LUA" LUA_INCDIR="$LUA_INCDIR" V=1
|| cat $LUAROCKS_CONFIG config.log

# Set Lua and Shell paths up for local luarocks tree.
# this package depends on will be installed.
- eval `$LUAROCKS path`
- export PATH=`pwd`/luarocks/bin:$PATH

# Install extra rocks into $LUAROCKS_CONFIG rocks tree.
- $LUAROCKS install specl;

# Make git rockspec for this lyaml
- make rockspecs LUAROCKS="$LUAROCKS" V=1
|| { $LUAROCKS path; cat $ROCKSPEC; }

# The git rockspec will rerun bootstrap, and check any rock versions
# in bootstrap.conf:buildreq this time.
- $LUAROCKS make $ROCKSPEC LUA="$LUA"

# Run self-tests in the `luarocks make` build tree.
- LUA_PATH=`pwd`'/lib/?.lua;'"${LUA_PATH-;}"
LUA_CPATH=`pwd`'/ext/?.so;'"${LUA_CPATH-;}"
LUA_INIT= LUA_INIT_5_2=
make check V=1
- make rockspecs V=1
|| cat $ROCKSPEC

# Rerun bootstrap automatically from git rockspec.
- sudo luarocks make $ROCKSPEC LUA="$LUA"


script:
- make check V=1


# Run sanity checks on CI server, ignoring buggy automakes.
after_success:
- '{ _assign="=";
if grep local-checks-to-skip build-aux/sanity-cfg.mk >/dev/null; then
_assign="+=";
fi;
printf "local-checks-to-skip %s sc_vulnerable_makefile_CVE-2012-3386\n" "$_assign";
} >> build-aux/sanity-cfg.mk'
- 'make syntax-check || :'

notifications:
slack: aspirinc:JyWeNrIdS0J5nf2Pn2BS1cih
56 changes: 56 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,59 @@
2014-12-17 Gary V. Vaughan <gary@gnu.org>

Release version 5.1.0
* NEWS: Record release date.

configury: remove references to lua52compat.h.
* local.mk (EXTRA_DIST): Remove ext/yaml/luacompat.h.

slingshot: sync with upstream, for release fixes.
* slingshot: Sync with upstream.

slingshot: sync with upstream, for release fixes.
* slingshot: Sync with upstream.

maint: bump release revision to 5.1.0.
* configure.ac (AC_INIT): Bump release revision to 5.1.0.
* NEWS: Update.

slingshot: sync with upstream, for travis fixes.
* slingshot: Sync with upstream.
* .travis.yml: Regenerate.

slingshot: sync with upstream, for luajit fixes.
* slingshot: Sync with upstream.
* .travis.yml: Regenerate.

slingshot: sync with upstream, for travis.yml bugfixes.
* slingshot: Sync with upstream.
* .travis.yml: Regenerate.

slingshot: sync with upstream, for Lua 5.3 support.
* slingshot: Sync with upstream.
* bootstrap: Update to latest slingshot bootstrap.
* .travis.yml: Regenerate.

maint: preliminary Lua 5.3.0 compatibility.
* slingshot: Sync with upstream for Lua 5.3 compatibility.
* configure.ac (AX_PROG_LUA): Accept Lua 5.3 interpreters.
* ext/yaml/lua52compat.h: Remove.
* ext/yaml/lyaml.h (lua_objlen, lua_strlen, luaL_openlib)
(luaL_register): Lua 5.2 and 5.3 compatibility definitions.
* .travis.yml: Regenerate.

2014-12-16 Gary V. Vaughan <gary@gnu.org>

configury: adopt semantic versioning.
* configure.ac (AC_INIT): Bump version to 6.0.0.

2014-09-26 Gary V. Vaughan <gary@gnu.org>

maint: post-release administrivia.
* configure.ac (AC_INIT): Bump release version to 6.
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* ./local.mk (old_NEWS_hash): Auto-update.

2014-09-25 Gary V. Vaughan <gary@gnu.org>

Release version 5
Expand Down
8 changes: 4 additions & 4 deletions Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -500,9 +500,9 @@ SPECL_ENV = LUA='$(LUA)' abs_top_builddir='$(abs_top_builddir)' \
ACLOCAL_AMFLAGS = -I m4
AM_CPPFLAGS = $(LUA_INCLUDE)
EXTRA_DIST = $(srcdir)/specs/spec_helper.lua $(NOTHING_ELSE) \
$(specl_SPECS) $(NOTHING_ELSE) ext/yaml/lua52compat.h \
ext/yaml/lyaml.h $(NOTHING_ELSE) $(mkrockspecs) \
$(package_rockspec) $(rockspec_conf) $(NOTHING_ELSE)
$(specl_SPECS) $(NOTHING_ELSE) ext/yaml/lyaml.h \
$(NOTHING_ELSE) $(mkrockspecs) $(package_rockspec) \
$(rockspec_conf) $(NOTHING_ELSE)
EXTRA_LTLIBRARIES =
CLEANFILES =
DISTCLEANFILES = $(luarocks_config) $(NOTHING_ELSE)
Expand All @@ -524,7 +524,7 @@ LUA_ENV = \
LUA_PATH="$(lyaml_path);$(LUA_PATH)" \
$(NOTHING_ELSE)

old_NEWS_hash = dab71a2961efb85ecb38d5a1c8b1c07c
old_NEWS_hash = 703831a9204e7435c5058c25ec8a969c
update_copyright_env = \
UPDATE_COPYRIGHT_HOLDER='(Gary V. Vaughan|Andrew Danforth)' \
UPDATE_COPYRIGHT_USE_INTERVALS=1 \
Expand Down
7 changes: 7 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
lyaml NEWS - User visible changes

* Noteworthy changes in release 5.1.0 (2014-12-17) [stable]

** New Features:

- Lua 5.3.0 compatibility.


* Noteworthy changes in release 5 (2014-09-25) [beta]

** Build:
Expand Down
Loading

0 comments on commit e0a5403

Please sign in to comment.