From 94b3e32c2775808bc49ac949615a252b5c636b14 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Thu, 24 Nov 2011 16:17:23 +0100 Subject: lua,build: define version --- Makefile | 12 +++++++++++- lua-uniso.c | 7 +++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 6eaa516..aaac99a 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,15 @@ -include config.mk +VERSION = 0.1 +GIT_REV := $(shell test -d .git && git describe --always --dirty || echo exported) + +ifneq ($(GIT_REV), exported) +FULL_VERSION := $(GIT_REV) +FULL_VERSION := $(patsubst v%,%,$(FULL_VERSION)) +else +FULL_VERSION := $(VERSION) +endif + ABI_VERSION := 0 SONAME := libuniso.so.$(ABI_VERSION) @@ -9,7 +19,7 @@ INCLUDES := uniso.h TARGETS = libuniso.a $(progs-y) $(shlibs-y) $(lualibs-y) CFLAGS ?= -g -Wall -Werror -CFLAGS += -fPIC +CFLAGS += -fPIC -I. -DVERSION=\"$(FULL_VERSION)\" CFLAGS += -I. LDFLAGS += -L. diff --git a/lua-uniso.c b/lua-uniso.c index ec1cb91..58559de 100644 --- a/lua-uniso.c +++ b/lua-uniso.c @@ -12,6 +12,10 @@ #define MODULE_NAME "uniso" +#ifndef VERSION +#define VERSION "unknown version" +#endif + struct l_uniso_context { lua_State *L; int callback_ref; @@ -77,6 +81,9 @@ static const luaL_reg methods[] = { LUALIB_API int luaopen_uniso(lua_State *L) { luaL_openlib(L, MODULE_NAME, methods, 0); + lua_pushliteral(L, "version"); + lua_pushliteral(L, VERSION); + lua_settable(L, -3); return 1; } -- cgit v1.2.3