mirror of
https://github.com/moparisthebest/socat
synced 2024-11-14 13:05:01 -05:00
196 lines
6.1 KiB
Makefile
196 lines
6.1 KiB
Makefile
# source: Makefile.in
|
|
# Copyright Gerhard Rieger 2001-2008
|
|
# Published under the GNU General Public License V.2, see file COPYING
|
|
|
|
# note: @...@ forms are filled in by configure script
|
|
|
|
SHELL = /bin/sh
|
|
AR = ar
|
|
RANLIB = ranlib
|
|
|
|
.SUFFIXES: .c .o
|
|
|
|
prefix = /usr/local
|
|
exec_prefix = ${prefix}
|
|
|
|
BINDEST = ${exec_prefix}/bin
|
|
|
|
datarootdir = ${prefix}/share
|
|
MANDEST = ${datarootdir}/man
|
|
|
|
srcdir = .
|
|
|
|
|
|
CC = gcc
|
|
CCOPTS = $(CCOPT) -Wall -Wno-parentheses
|
|
|
|
SYSDEFS = -D_LONGLONG
|
|
CPPFLAGS = -I.
|
|
#0 INCLS = -I. @V_INCL@
|
|
DEFS = -DHAVE_CONFIG_H
|
|
LIBS = -lwrap -lutil -lreadline -lssl
|
|
LDFLAGS =
|
|
|
|
INSTALL = /usr/bin/install -c
|
|
|
|
#OBJ = $(CSRC:.c=.o) $(GENSRC:.c=.o)
|
|
|
|
|
|
#0 CFLAGS = -O -D_GNU_SOURCE $(CCOPTS) $(DEFS) $(INCLS)
|
|
CFLAGS = -O -D_GNU_SOURCE $(CCOPTS) $(DEFS) $(CPPFLAGS)
|
|
CLIBS = $(LIBS)
|
|
#CLIBS = $(LIBS) -lm -lefence
|
|
XIOSRCS = xioinitialize.c xiohelp.c xioparam.c xiodiag.c xioopen.c xioopts.c \
|
|
xiosignal.c xiosigchld.c xioread.c xiowrite.c \
|
|
xiolayer.c xioshutdown.c xioclose.c xioexit.c \
|
|
xio-process.c xio-fd.c xio-fdnum.c xio-stdio.c xio-pipe.c \
|
|
xio-gopen.c xio-creat.c xio-file.c xio-named.c \
|
|
xio-socket.c xio-interface.c xio-listen.c xio-unix.c \
|
|
xio-ip.c xio-ip4.c xio-ip6.c xio-ipapp.c xio-tcp.c \
|
|
xio-sctp.c xio-rawip.c \
|
|
xio-socks.c xio-proxy.c xio-udp.c \
|
|
xio-rawip.c \
|
|
xio-progcall.c xio-exec.c xio-system.c xio-termios.c xio-readline.c \
|
|
xio-pty.c xio-openssl.c xio-streams.c\
|
|
xio-ascii.c xiolockfile.c xio-tcpwrap.c xio-ext2.c xio-tun.c
|
|
XIOOBJS = $(XIOSRCS:.c=.o)
|
|
UTLSRCS = error.c dalan.c procan.c procan-cdefs.c hostan.c fdname.c sysutils.c utils.c nestlex.c filan.c sycls.c sslcls.c
|
|
UTLOBJS = $(UTLSRCS:.c=.o)
|
|
CFILES = $(XIOSRCS) $(UTLSRCS) socat.c procan_main.c filan_main.c
|
|
OFILES = $(CFILES:.c=.o)
|
|
PROGS = socat procan filan
|
|
|
|
HFILES = sycls.h sslcls.h error.h dalan.h procan.h filan.h hostan.h sysincludes.h xio.h xioopen.h sysutils.h utils.h nestlex.h compat.h \
|
|
xioconfig.h mytypes.h xioopts.h xiodiag.h xiohelp.h xiosysincludes.h \
|
|
xiomodes.h xiolayer.h xio-process.h xio-fd.h xio-fdnum.h xio-stdio.h \
|
|
xio-named.h xio-file.h xio-creat.h xio-gopen.h xio-pipe.h \
|
|
xio-socket.h xio-interface.h xio-listen.h xio-unix.h \
|
|
xio-ip.h xio-ip4.h xio-ip6.h xio-rawip.h \
|
|
xio-ipapp.h xio-tcp.h xio-udp.h xio-sctp.h \
|
|
xio-socks.h xio-proxy.h xio-progcall.h xio-exec.h \
|
|
xio-system.h xio-termios.h xio-readline.h \
|
|
xio-pty.h xio-openssl.h xio-streams.h \
|
|
xio-ascii.h xiolockfile.h xio-tcpwrap.h xio-ext2.h xio-tun.h
|
|
|
|
|
|
DOCFILES = README README.FIPS CHANGES FILES EXAMPLES PORTING SECURITY DEVELOPMENT doc/socat.yo doc/socat.1 doc/socat.html doc/xio.help FAQ BUGREPORTS COPYING COPYING.OpenSSL doc/dest-unreach.css doc/socat-openssltunnel.html doc/socat-multicast.html doc/socat-tun.html
|
|
SHFILES = daemon.sh mail.sh ftp.sh readline.sh
|
|
TESTFILES = test.sh socks4echo.sh proxyecho.sh gatherinfo.sh readline-test.sh \
|
|
proxy.sh socks4a-echo.sh testcert.conf
|
|
OSFILES = Config/Makefile.Linux-2-6-24 Config/config.Linux-2-6-24.h \
|
|
Config/Makefile.SunOS-5-10 Config/config.SunOS-5-10.h \
|
|
Config/Makefile.FreeBSD-6-1 Config/config.FreeBSD-6-1.h \
|
|
Config/Makefile.NetBSD-4-0 Config/config.NetBSD-4-0.h \
|
|
Config/Makefile.OpenBSD-4-3 Config/config.OpenBSD-4-3.h
|
|
|
|
all: progs doc
|
|
|
|
scmclean: gitclean
|
|
|
|
gitclean: distclean docclean
|
|
rm -f Makefile.bak configure
|
|
|
|
doc: doc/socat.1 doc/socat.html
|
|
|
|
docclean:
|
|
rm -f doc/socat.1 doc/socat.html
|
|
|
|
doc/socat.1: doc/socat.yo
|
|
yodl2man -o $@ $+
|
|
|
|
doc/socat.html: doc/socat.yo
|
|
cd doc; yodl2html -o socat.html socat.yo; cd ..
|
|
|
|
progs: $(PROGS)
|
|
|
|
depend: $(CFILES) $(HFILES)
|
|
makedepend $(SYSDEFS) $(CFILES)
|
|
|
|
socat: socat.o libxio.a
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ socat.o libxio.a $(CLIBS)
|
|
|
|
PROCAN_OBJS=procan_main.o procan.o procan-cdefs.o hostan.o error.o sycls.o sysutils.o utils.o
|
|
procan: $(PROCAN_OBJS)
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(PROCAN_OBJS) $(CLIBS)
|
|
|
|
filan: filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o $(CLIBS)
|
|
|
|
libxio.a: $(XIOOBJS) $(UTLOBJS)
|
|
$(AR) r $@ $(XIOOBJS) $(UTLOBJS)
|
|
$(RANLIB) $@
|
|
|
|
doc: doc/xio.help
|
|
#
|
|
|
|
strip: progs
|
|
strip $(PROGS)
|
|
|
|
install: progs $(srcdir)/doc/socat.1
|
|
mkdir -p $(DESTDIR)$(BINDEST)
|
|
$(INSTALL) -m 755 socat $(DESTDIR)$(BINDEST)
|
|
$(INSTALL) -m 755 procan $(DESTDIR)$(BINDEST)
|
|
$(INSTALL) -m 755 filan $(DESTDIR)$(BINDEST)
|
|
mkdir -p $(DESTDIR)$(MANDEST)/man1
|
|
$(INSTALL) -m 644 $(srcdir)/doc/socat.1 $(DESTDIR)$(MANDEST)/man1/
|
|
|
|
uninstall:
|
|
rm -f $(DESTDIR)$(BINDEST)/socat
|
|
rm -f $(DESTDIR)$(BINDEST)/procan
|
|
rm -f $(DESTDIR)$(BINDEST)/filan
|
|
rm -f $(DESTDIR)$(MANDEST)/man1/socat.1
|
|
|
|
# make a GNU-zipped tar ball of the source files
|
|
dist: socat.tar.gz socat.tar.bz2
|
|
|
|
socat.tar.gz: socat.tar
|
|
gzip -9 <socat.tar >socat.tar.gz
|
|
|
|
socat.tar.bz2: socat.tar
|
|
bzip2 -9 <socat.tar >socat.tar.bz2
|
|
|
|
VERSION = `sed 's/"//g' VERSION`
|
|
TARDIR = socat-$(VERSION)
|
|
socat.tar: configure.in configure Makefile.in config.h.in install-sh VERSION $(CFILES) $(HFILES) $(DOCFILES) $(SHFILES) $(OSFILES) $(TESTFILES) socat.spec
|
|
if [ ! -d $(TARDIR) ]; then mkdir $(TARDIR); fi
|
|
tar cf - $+ |(cd $(TARDIR); tar xf -)
|
|
tar cvf socat.tar $(TARDIR)
|
|
rm -f $(TARDIR)/COPYING # write protected
|
|
rm -r $(TARDIR)
|
|
|
|
clean:
|
|
rm -f *.o libxio.a socat procan filan \
|
|
socat.tar socat.tar.Z socat.tar.gz socat.tar.bz2 \
|
|
socat.out compile.log test.log
|
|
|
|
# remove all files that are generated from the original socat distribution
|
|
# note that Makefile is also removed, so you have to start with ./configure
|
|
# again
|
|
distclean: clean
|
|
rm -f config.status config.cache config.log config.h Makefile
|
|
rm -rf autom4te.cache
|
|
|
|
info: socat
|
|
uname -a >socat.out
|
|
./socat -V >>socat.out
|
|
./socat -hh >>socat.out
|
|
|
|
# perform some tests on socat
|
|
test: progs
|
|
./test.sh
|
|
|
|
cert:
|
|
# prepare critical files with correct permissions to avoid race cond
|
|
>cert.key
|
|
>cert.pem
|
|
chmod 600 cert.key cert.pem
|
|
# generate a private key
|
|
openssl genrsa -out cert.key 1024
|
|
# generate a self signed cert
|
|
openssl req -new -key cert.key -x509 -days 3653 -out cert.crt
|
|
# ...enter fields
|
|
# generate the pem file
|
|
cat cert.key cert.crt >cert.pem
|
|
#echo use cert.pem on requestors side, i.e. with option cert=cert.pem
|
|
#echo use cert.crt on checkers side, i.e. with option cafile=cert.crt
|