Skip to content

Commit 6fdee56

Browse files
committed
add shared library support to makefile
1 parent 0183ae9 commit 6fdee56

File tree

3 files changed

+20
-11
lines changed

3 files changed

+20
-11
lines changed

Makefile.am

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,32 @@
11
AUTOMAKE_OPTIONS = foreign
2+
ACLOCAL_AMFLAGS = -I m4
23

34
COMMON = src/cwebsocket/utf8.h src/cwebsocket/utf8.c src/cwebsocket/common.h src/cwebsocket/common.c
45
ECHO_CLIENT = src/cwebsocket/subprotocol/echo/echo_client.h src/cwebsocket/subprotocol/echo/echo_client.c
56
ECHO_SERVER = src/cwebsocket/subprotocol/echo/echo_server.h src/cwebsocket/subprotocol/echo/echo_server.c
7+
WEBSOCKET_CLIENT = src/cwebsocket/client.h src/cwebsocket/client.c
8+
WEBSOCKET_SERVER = src/cwebsocket/server.h src/cwebsocket/server.c
69

710
bin_PROGRAMS = websocket-client websocket-server websocket-testsuite
8-
websocket_client_SOURCES = $(ECHO_CLIENT) $(COMMON) src/cwebsocket/client.h src/cwebsocket/client.c src/websocket-client.c
9-
websocket_server_SOURCES = $(ECHO_SERVER) $(COMMON) src/cwebsocket/server.h src/cwebsocket/server.c src/websocket-server.c
10-
websocket_testsuite_SOURCES = $(COMMON) src/cwebsocket/client.h src/cwebsocket/client.c src/websocket-testsuite.c
11+
websocket_client_SOURCES = $(ECHO_CLIENT) $(COMMON) $(WEBSOCKET_CLIENT) src/websocket-client.c
12+
websocket_server_SOURCES = $(ECHO_SERVER) $(COMMON) $(WEBSOCKET_SERVER) src/websocket-server.c
13+
websocket_testsuite_SOURCES = $(COMMON) $(WEBSOCKET_CLIENT) src/websocket-testsuite.c
1114

1215
noinst_LIBRARIES = libwsclient.a libwsserver.a
13-
libwsclient_a_SOURCES = $(ECHO_CLIENT) $(COMMON) src/cwebsocket/client.h src/cwebsocket/client.c
14-
libwsserver_a_SOURCES = $(ECHO_SERVER) $(COMMON) src/cwebsocket/server.h src/cwebsocket/server.c
16+
libwsclient_a_SOURCES = $(ECHO_CLIENT) $(COMMON) $(WEBSOCKET_CLIENT)
17+
libwsserver_a_SOURCES = $(ECHO_SERVER) $(COMMON) $(WEBSOCKET_SERVER)
1518

16-
AM_CFLAGS= -Wall
19+
AM_CFLAGS = -Wall
1720

1821
if DEBUG
1922
AM_CFLAGS += -g3
2023
else
2124
AM_CFLAGS += -O3
2225
endif
2326

27+
so:
28+
gcc -shared -fPIC $(ECHO_CLIENT) $(WEBSOCKET_CLIENT) -o libwsclient.so
29+
gcc -shared -fPIC $(ECHO_SERVER) $(WEBSOCKET_SERVER) -o libwsserver.so
30+
2431
clean:
25-
rm -rf libwsclient.a libwsserver.a .gitignore vgcore.* autoscan.log config.h.in config.h config.cache configure install-sh aclocal.m4 autom4te.cache/ config.log config.status Debug/ depcomp .deps/ m4/ Makefile Makefile.in missing stamp-h1 *.o src/*.o *~ websocket-client websocket-server websocket-testsuite
32+
rm -rf ltmain.sh libtool config.sub config.guess libwsclient.* libwsserver.* .gitignore vgcore.* autoscan.log config.h.in config.h config.cache configure install-sh aclocal.m4 autom4te.cache/ config.log config.status Debug/ depcomp .deps/ m4/ Makefile Makefile.in missing stamp-h1 *.o src/*.o *~ websocket-client websocket-server websocket-testsuite

autogen.sh

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
#!/bin/sh
22

33
aclocal --install -I m4 &&
4-
autoconf &&
5-
autoheader &&
6-
automake --add-missing --copy
4+
autoreconf -i &&
5+
autoheader

configure.ac

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,18 @@ AC_INIT([cwebsocket], [0.01], [root@localhost])
66
AM_INIT_AUTOMAKE([1.9 foreign])
77
AC_CONFIG_SRCDIR([src/websocket-client.c])
88
AC_CONFIG_HEADERS([config.h])
9+
AC_CONFIG_MACRO_DIR([m4])
10+
AC_ENABLE_SHARED
11+
LT_INIT
912

1013
if test -z $CFLAGS; then
1114
CFLAGS=''
1215
fi
1316

1417
# Checks for programs.
1518
AC_PROG_CC
16-
AC_PROG_RANLIB
1719
AC_PROG_INSTALL
20+
AC_PROG_LIBTOOL(libtool)
1821

1922
# Remember externally set CFLAGS
2023
EXTERNAL_CFLAGS="$CFLAGS"

0 commit comments

Comments
 (0)