Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
ruanhaishen
hiredis
Commits
79056321
Commit
79056321
authored
Jun 18, 2011
by
Pieter Noordhuis
Browse files
Merge branch 'makefile'
parents
e0d5c712
7a9127c9
Changes
4
Hide whitespace changes
Inline
Side-by-side
Makefile
View file @
79056321
# Hiredis Makefile
# Copyright (C) 2010 Salvatore Sanfilippo <antirez at gmail dot com>
# Copyright (C) 2010-2011 Salvatore Sanfilippo <antirez at gmail dot com>
# Copyright (C) 2010-2011 Pieter Noordhuis <pcnoordhuis at gmail dot com>
# This file is released under the BSD license, see the COPYING file
OBJ
=
net.o hiredis.o sds.o async.o
...
...
@@ -9,60 +10,40 @@ LIBNAME=libhiredis
HIREDIS_MAJOR
=
0
HIREDIS_MINOR
=
10
uname_S
:=
$(
shell
sh
-c
'uname -s 2>/dev/null || echo not'
)
# Fallback to gcc when $CC is not in $PATH.
CC
:=
$(
shell
sh
-c
'type
$(CC)
>/dev/null 2>/dev/null && echo
$(CC)
|| echo gcc'
)
OPTIMIZATION
?=
-O3
CFLAGS
=
$(OPTIMIZATION)
-fPIC
-Wall
-W
-Wstrict-prototypes
-Wwrite-strings
$(ARCH)
$(PROF)
LDFLAGS
=
DEBUG
?=
-g
-ggdb
DYLIBSUFFIX
=
so
STLIBSUFFIX
=
a
DYLIB_MINOR_NAME
=
$(LIBNAME)
.
$(DYLIBSUFFIX)
.
$(HIREDIS_MAJOR)
.
$(HIREDIS_MINOR)
DYLIB_MAJOR_NAME
=
$(LIBNAME)
.
$(DYLIBSUFFIX)
.
$(HIREDIS_MAJOR)
DYLIBNAME
=
$(LIBNAME)
.
$(DYLIBSUFFIX)
DYLIB_MAKE_CMD
=
$(CC)
-shared
-Wl
,-soname,
$(DYLIB_MINOR_NAME)
-o
$(DYLIBNAME)
STLIBNAME
=
$(LIBNAME)
.
$(STLIBSUFFIX)
STLIB_MAKE_CMD
=
ar rcs
$(STLIBNAME)
uname_S
:=
$(
shell
sh
-c
'uname -s 2>/dev/null || echo not'
)
ifeq
($(uname_S),SunOS)
CFLAGS
?=
$(OPTIMIZATION)
-fPIC
-Wall
-W
-D__EXTENSIONS__
-D_XPG6
$(ARCH)
$(PROF)
CCLINK
?=
-ldl
-lnsl
-lsocket
-lm
-lpthread
LDFLAGS
?=
-L
.
DYLIBSUFFIX
=
so
STLIBSUFFIX
=
a
DYLIB_MINOR_NAME
?=
$(LIBNAME)
.
$(DYLIBSUFFIX)
.
$(HIREDIS_MAJOR)
.
$(HIREDIS_MINOR)
DYLIB_MAJOR_NAME
?=
$(LIBNAME)
.
$(DYLIBSUFFIX)
.
$(HIREDIS_MAJOR)
DYLIBNAME
?=
$(LIBNAME)
.
$(DYLIBSUFFIX)
DYLIB_MAKE_CMD
?=
$(CC)
-G
-o
$(DYLIBNAME)
-h
$(DYLIB_MINOR_NAME)
STLIBNAME
?=
$(LIBNAME)
.
$(STLIBSUFFIX)
STLIB_MAKE_CMD
?=
ar rcs
$(STLIBNAME)
LDFLAGS
=
-ldl
-lnsl
-lsocket
DYLIB_MAKE_CMD
=
$(CC)
-G
-o
$(DYLIBNAME)
-h
$(DYLIB_MINOR_NAME)
STLIB_MAKE_CMD
=
ar rcs
$(STLIBNAME)
INSTALL
=
cp
-r
e
lse
e
ndif
ifeq
($(uname_S),Darwin)
CFLAGS
?=
$(OPTIMIZATION)
-fPIC
-Wall
-W
-Wstrict-prototypes
-Wwrite-strings
$(ARCH)
$(PROF)
CCLINK
?=
-lm
-pthread
LDFLAGS
?=
-L
.
OBJARCH
?=
-arch
i386
-arch
x86_64
DYLIBSUFFIX
=
dylib
STLIBSUFFIX
=
a
DYLIB_MINOR_NAME
?=
$(LIBNAME)
.
$(HIREDIS_MAJOR)
.
$(HIREDIS_MINOR)
.
$(DYLIBSUFFIX)
DYLIB_MAJOR_NAME
?=
$(LIBNAME)
.
$(HIREDIS_MAJOR)
.
$(DYLIBSUFFIX)
DYLIBNAME
?=
$(LIBNAME)
.
$(DYLIBSUFFIX)
DYLIB_MAKE_CMD
?=
libtool
-dynamic
-o
$(DYLIBNAME)
-install_name
$(DYLIB_MINOR_NAME)
-lm
$(DEBUG)
-
STLIBNAME
?=
$(LIBNAME)
.
$(STLIBSUFFIX)
STLIB_MAKE_CMD
?=
libtool
-static
-o
$(STLIBNAME)
-
INSTALL
=
cp
-a
else
CFLAGS
?=
$(OPTIMIZATION)
-fPIC
-Wall
-W
-Wstrict-prototypes
-Wwrite-strings
$(ARCH)
$(PROF)
CCLINK
?=
-lm
-pthread
LDFLAGS
?=
-L
.
DYLIBSUFFIX
=
so
STLIBSUFFIX
=
a
DYLIB_MINOR_NAME
?=
$(LIBNAME)
.
$(DYLIBSUFFIX)
.
$(HIREDIS_MAJOR)
.
$(HIREDIS_MINOR)
DYLIB_MAJOR_NAME
?=
$(LIBNAME)
.
$(DYLIBSUFFIX)
.
$(HIREDIS_MAJOR)
DYLIBNAME
?=
$(LIBNAME)
.
$(DYLIBSUFFIX)
DYLIB_MAKE_CMD
?=
gcc
-shared
-Wl
,-soname,
$(DYLIB_MINOR_NAME)
-o
$(DYLIBNAME)
STLIBNAME
?=
$(LIBNAME)
.
$(STLIBSUFFIX)
STLIB_MAKE_CMD
?=
ar rcs
$(STLIBNAME)
INSTALL
=
cp
-a
DYLIB_MINOR_NAME
=
$(LIBNAME)
.
$(HIREDIS_MAJOR)
.
$(HIREDIS_MINOR)
.
$(DYLIBSUFFIX)
DYLIB_MAJOR_NAME
=
$(LIBNAME)
.
$(HIREDIS_MAJOR)
.
$(DYLIBSUFFIX)
DYLIBNAME
=
$(LIBNAME)
.
$(DYLIBSUFFIX)
DYLIB_MAKE_CMD
=
libtool
-dynamic
-o
$(DYLIBNAME)
-install_name
$(DYLIB_MINOR_NAME)
-lm
$(DEBUG)
-
STLIBNAME
=
$(LIBNAME)
.
$(STLIBSUFFIX)
STLIB_MAKE_CMD
=
libtool
-static
-o
$(STLIBNAME)
-
endif
endif
CCOPT
=
$(CFLAGS)
$(CCLINK)
DEBUG
?=
-g
-ggdb
PREFIX
?=
/usr/local
INCLUDE_PATH
?=
include/hiredis
LIBRARY_PATH
?=
lib
INSTALL_INCLUDE_PATH
=
$(PREFIX)
/
$(INCLUDE_PATH)
INSTALL_LIBRARY_PATH
=
$(PREFIX)
/
$(LIBRARY_PATH)
all
:
$(DYLIBNAME) $(BINS)
...
...
@@ -85,10 +66,10 @@ static: $(STLIBNAME)
# Binaries:
hiredis-example-libevent
:
example-libevent.c adapters/libevent.h $(STLIBNAME)
$(CC)
-o
$@
$(C
COPT
)
$(DEBUG)
$(LDFLAGS)
-levent
example-libevent.c
$(STLIBNAME)
$(CC)
-o
$@
$(C
FLAGS
)
$(DEBUG)
$(LDFLAGS)
-levent
example-libevent.c
$(STLIBNAME)
hiredis-example-libev
:
example-libev.c adapters/libev.h $(STLIBNAME)
$(CC)
-o
$@
$(C
COPT
)
$(DEBUG)
$(LDFLAGS)
-lev
example-libev.c
$(STLIBNAME)
$(CC)
-o
$@
$(C
FLAGS
)
$(DEBUG)
$(LDFLAGS)
-lev
example-libev.c
$(STLIBNAME)
ifndef
AE_DIR
hiredis-example-ae
:
...
...
@@ -96,11 +77,11 @@ hiredis-example-ae:
@
false
else
hiredis-example-ae
:
example-ae.c adapters/ae.h $(STLIBNAME)
$(CC)
-o
$@
$(C
COPT
)
$(DEBUG)
-I
$(AE_DIR)
$(LDFLAGS)
$(AE_DIR)
/ae.o
$(AE_DIR)
/zmalloc.o example-ae.c
$(STLIBNAME)
$(CC)
-o
$@
$(C
FLAGS
)
$(DEBUG)
-I
$(AE_DIR)
$(LDFLAGS)
$(AE_DIR)
/ae.o
$(AE_DIR)
/zmalloc.o example-ae.c
$(STLIBNAME)
endif
hiredis-%
:
%.o $(STLIBNAME)
$(CC)
-o
$@
$(C
COPT
)
$(DEBUG)
$(LDFLAGS)
$<
$(STLIBNAME)
$(CC)
-o
$@
$(C
FLAGS
)
$(DEBUG)
$(LDFLAGS)
$<
$(STLIBNAME)
test
:
hiredis-test
./hiredis-test
...
...
@@ -126,6 +107,19 @@ clean:
dep
:
$(CC)
-MM
*
.c
# Installation related variables and target
PREFIX
?=
/usr/local
INCLUDE_PATH
?=
include/hiredis
LIBRARY_PATH
?=
lib
INSTALL_INCLUDE_PATH
=
$(PREFIX)
/
$(INCLUDE_PATH)
INSTALL_LIBRARY_PATH
=
$(PREFIX)
/
$(LIBRARY_PATH)
ifeq
($(uname_S),SunOS)
INSTALL
?=
cp
-r
endif
INSTALL
?=
cp
-a
install
:
$(DYLIBNAME) $(STLIBNAME)
mkdir
-p
$(INSTALL_INCLUDE_PATH)
$(INSTALL_LIBRARY_PATH)
$(INSTALL)
hiredis.h async.h adapters
$(INSTALL_INCLUDE_PATH)
...
...
@@ -134,7 +128,6 @@ install: $(DYLIBNAME) $(STLIBNAME)
cd
$(INSTALL_LIBRARY_PATH)
&&
ln
-sf
$(DYLIB_MAJOR_NAME)
$(DYLIBNAME)
$(INSTALL)
$(STLIBNAME)
$(INSTALL_LIBRARY_PATH)
32bit
:
@
echo
""
@
echo
"WARNING: if it fails under Linux you probably need to install libc6-dev-i386"
...
...
async.c
View file @
79056321
...
...
@@ -29,6 +29,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
#include "fmacros.h"
#include <string.h>
#include <strings.h>
#include <assert.h>
...
...
fmacros.h
View file @
79056321
#ifndef __HIREDIS_FMACRO_H
#define __HIREDIS_FMACRO_H
#if
n
def
_BSD_SOURCE
#if
!
def
ined(
_BSD_SOURCE
)
#define _BSD_SOURCE
#endif
#ifdef __linux__
#define _XOPEN_SOURCE 700
#if defined(__sun__)
#define _POSIX_C_SOURCE 200112L
#elif defined(__linux__)
#define _XOPEN_SOURCE 600
#else
#define _XOPEN_SOURCE
#endif
...
...
test.c
View file @
79056321
#include "fmacros.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment