moonbridge

annotate Makefile @ 259:385b6607785a

Bugfix: do not attempt flushing/closing if file descriptor has already been closed
author jbe
date Mon Sep 19 01:05:30 2016 +0200 (2016-09-19)
parents 1dbc5c27b279
children 446db91762b7
rev   line source
jbe@0 1 # BSD Makefile
jbe@0 2 # On GNU systems, use bmake.
jbe@0 3
jbe@24 4 PLATFORM != uname
jbe@24 5
jbe@24 6 .if $(PLATFORM) == "FreeBSD"
jbe@0 7 # Default configuration for FreeBSD
jbe@0 8 LUA_INCLUDE ?= /usr/local/include/lua52
jbe@0 9 LUA_LIBDIR ?= /usr/local/lib
jbe@0 10 LUA_LIBRARY ?= lua-5.2
jbe@0 11 UTIL_FLAGS ?= -lutil
jbe@0 12
jbe@24 13 .elif $(PLATFORM) == "Linux"
jbe@16 14 # Distinguish between different Linux distributions
jbe@24 15 DISTRIBUTION != lsb_release -i -s
jbe@25 16 .if $(DISTRIBUTION) == "Debian"
jbe@25 17 # Default configuration for Debian
jbe@25 18 LUA_INCLUDE ?= /usr/include/lua5.2
jbe@25 19 LUA_LIBDIR ?= /usr/lib
jbe@25 20 LUA_LIBRARY ?= lua5.2
jbe@25 21 UTIL_FLAGS ?= -ldl -lbsd -lrt
jbe@25 22 .elif $(DISTRIBUTION) == "Ubuntu"
jbe@16 23 # Default configuration for Ubuntu
jbe@16 24 LUA_INCLUDE ?= /usr/include/lua5.2
jbe@16 25 LUA_LIBDIR ?= /usr/lib/x86_64-linux-gnu
jbe@16 26 LUA_LIBRARY ?= lua5.2
jbe@16 27 UTIL_FLAGS ?= -ldl -lbsd
jbe@16 28 .else
jbe@16 29 # Default configuration for other Linux distributions
jbe@0 30 LUA_INCLUDE ?= /usr/include
jbe@0 31 LUA_LIBDIR ?= /usr/lib
jbe@0 32 LUA_LIBRARY ?= lua
jbe@0 33 UTIL_FLAGS ?= -ldl -lbsd
jbe@16 34 .endif
jbe@0 35
jbe@0 36 .else
jbe@0 37 # Default configuration for other systems
jbe@0 38 LUA_INCLUDE ?= /usr/include
jbe@0 39 LUA_LIBDIR ?= /usr/lib
jbe@0 40 LUA_LIBRARY ?= lua
jbe@0 41 UTIL_FLAGS ?= -lutil
jbe@0 42
jbe@0 43 .endif
jbe@0 44
jbe@8 45 .ifdef MOONBR_LUA_PATH
jbe@8 46 MOONBR_LUA_PATH_DEFINE = "-DMOONBR_LUA_PATH=\"$(MOONBR_LUA_PATH)\""
jbe@8 47 .endif
jbe@8 48
jbe@9 49 .ifdef MOONBR_LUA_CPATH
jbe@9 50 MOONBR_LUA_CPATH_DEFINE = "-DMOONBR_LUA_CPATH=\"$(MOONBR_LUA_CPATH)\""
jbe@9 51 .endif
jbe@9 52
jbe@185 53 all:: moonbridge moonbridge_io.so
jbe@79 54
jbe@79 55 moonbridge: moonbridge.c moonbridge_io.h moonbridge_io.o
jbe@79 56 cc -Wall -Wno-unused-result -O2 -Wl,-E -I $(LUA_INCLUDE) -L $(LUA_LIBDIR) -o moonbridge $(MOONBR_LUA_PATH_DEFINE) $(MOONBR_LUA_CPATH_DEFINE) moonbridge.c -lm -l$(LUA_LIBRARY) $(UTIL_FLAGS) moonbridge_io.o
jbe@0 57
jbe@139 58 moonbridge_io.o: moonbridge_io.c moonbridge_io.h
jbe@79 59 cc -c -Wall -O2 -fPIC -I $(LUA_INCLUDE) -o moonbridge_io.o moonbridge_io.c
jbe@79 60
jbe@79 61 moonbridge_io.so: moonbridge_io.o
jbe@216 62 ld -shared -o moonbridge_io.so moonbridge_io.o $(UTIL_FLAGS)
jbe@0 63
jbe@243 64 freebsd_with_tls::
jbe@243 65 #TODO
jbe@243 66 cc -D MOONBR_IO_USE_TLS -c -Wall -O2 -fPIC -I /usr/local/include/lua52 -I /usr/local/include -o moonbridge_io.o moonbridge_io.c && ld -L/usr/local/lib -shared -o moonbridge_io.so moonbridge_io.o -lutil -ltls
jbe@243 67
jbe@185 68 clean::
jbe@185 69 rm -f moonbridge moonbridge_io.o moonbridge_io.so
jbe@139 70

Impressum / About Us