radare2/shlr/sdb/config.mk
2016-07-29 16:34:08 +03:00

136 lines
2.4 KiB
Makefile

PREFIX?=/usr
BINDIR=${PREFIX}/bin
LIBDIR=${PREFIX}/lib
DATADIR=${PREFIX}/share
INCDIR=${PREFIX}/include
VAPIDIR=${DATADIR}/vala/vapi/
MANDIR=${DATADIR}/man/man1
SDBVER=0.10.4
BUILD_MEMCACHE=0
INSTALL?=install
ifeq ($(INSTALL),cp)
INSTALL_DIR=mkdir -p
INSTALL_DATA=cp -f
INSTALL_PROGRAM=cp -f
INSTALL_SCRIPT=cp -f
INSTALL_MAN=cp -f
INSTALL_LIB=cp -f
else
INSTALL_DIR=$(INSTALL) -d
INSTALL_DATA=$(INSTALL) -m 644
INSTALL_PROGRAM=$(INSTALL) -m 755
INSTALL_SCRIPT=$(INSTALL) -m 755
INSTALL_MAN=$(INSTALL) -m 444
INSTALL_LIB=$(INSTALL) -c
endif
# link time optimization
#CFLAGS_STD=-std=gnu99 -D_XOPEN_SOURCE=700 -D_POSIX_C_SOURCE=200809L -flto -O2
CFLAGS_STD=-std=gnu99 -D_XOPEN_SOURCE=700 -D_POSIX_C_SOURCE=200809L
#CFLAGS+=-Wno-initializer-overrides
CFLAGS+=${CFLAGS_STD}
# Hack to fix clang warnings
ifeq ($(CC),cc)
CFLAGS+=$(shell gcc -v 2>&1 | grep -q LLVM && echo '-Wno-initializer-overrides')
endif
CFLAGS+=-Wall
CFLAGS+=-Wsign-compare
# some old gcc doesnt support this
# CFLAGS+=-Wmissing-field-initializers
CFLAGS+=-O3
#CFLAGS+=-ggdb -g -Wall -O0
#CFLAGS+=-g
#LDFLAGS+=-g -flto
HAVE_VALA=#$(shell valac --version 2> /dev/null)
# This is hacky
HOST_CC?=gcc
RANLIB?=ranlib
OS?=$(shell uname)
OSTYPE?=$(shell uname -s)
ARCH?=$(shell uname -m)
AR?=ar
CC?=gcc
EXT_EXE=
EXT_SO=.so
ifneq (,$(findstring MINGW32,${OSTYPE}))
OS=w32
CC=gcc
else
ifeq (${OS},w32)
WCP?=i386-mingw32
CC=${WCP}-gcc
AR?=${WCP}-ar
endif
endif
#LDFLAGS_SHARED?=-fPIC -shared
LDFLAGS_SHARED?=-shared
ifeq (${OS},w32)
EXT_EXE=.exe
EXT_SO=.dll
LDFLAGS_SHARED=-shared
endif
# create .d files
ifeq (,$(findstring tcc,${CC}))
CFLAGS+=-MMD
else
CFLAGS+=-MD
endif
ifeq (${OS},w32)
OSTYPE=MINGW32
endif
ifneq (,$(findstring MINGW,${OSTYPE})$(findstring MSYS,${OSTYPE})$(findstring CYGWIN,${OSTYPE}))
EXT_SO=dll
SOVER=${EXT_SO}
else
EXT_SO=so
SOVER=${EXT_SO}.${SDBVER}
endif
ifeq (${OS},Darwin)
EXT_SO=dylib
SOVER=dylib
LDFLAGS+=-dynamic
LDFLAGS_SHARED+=-dynamiclib
ifeq (${ARCH},i386)
#CC+=-arch i386
CC+=-arch x86_64
endif
else
ifneq (,$(findstring CYGWIN,${OSTYPE}))
CFLAGS+=-D__CYGWIN__=1
LDFLAGS_SHARED?=-shared
else
ifneq (,$(findstring MINGW32,${OSTYPE}))
CFLAGS+=-DMINGW32=1
else
CFLAGS+=-fPIC
SOVERSION=0
LDFLAGS_SHARED?=-fPIC
endif
endif
LDFLAGS_SHARED+=-Wl,-soname,libsdb.so.$(SOVERSION)
endif
ifeq ($(MAKEFLAGS),s)
SILENT=1
else
SILENT=
endif
ifneq (${SDB_CONFIG},)
include ${SDB_CONFIG}
endif