prefix=/usr/local
+incdir=$(prefix)/include/librtmp
+bindir=$(prefix)/bin
+libdir=$(prefix)/lib
+mandir=$(prefix)/man
+BINDIR=$(DESTDIR)$(bindir)
+INCDIR=$(DESTDIR)$(incdir)
+LIBDIR=$(DESTDIR)$(libdir)
+MANDIR=$(DESTDIR)$(mandir)
+
CC=$(CROSS_COMPILE)gcc
LD=$(CROSS_COMPILE)ld
AR=$(CROSS_COMPILE)ar
CRYPTO_DEF=$(DEF_$(CRYPTO))
SO_VERSION=0
-SO_posix=so.$(SO_VERSION)
-SO_darwin=$(SO_VERSION).dylib
+SOX_posix=so
+SOX_darwin=dylib
+SOX_mingw=so # useless
+SOX=$(SOX_$(SYS))
+SO_posix=$(SOX).$(SO_VERSION)
+SO_darwin=$(SO_VERSION).$(SOX)
SO_mingw=dll
SO_EXT=$(SO_$(SYS))
+SODIR_posix=$(LIBDIR)
+SODIR_darwin=$(LIBDIR)
+SODIR_mingw=$(BINDIR)
+SODIR=$(SODIR_$(SYS))
+
SO_LDFLAGS_posix=-shared -Wl,-soname,$@
SO_LDFLAGS_darwin=-dynamiclib -flat_namespace -undefined suppress -fno-common \
-headerpad_max_install_names
SHARED=yes
SODEF_yes=-fPIC
SOLIB_yes=librtmp.$(SO_EXT)
-SOINST_yes=install_$(SO_EXT)
+SOINST_yes=install_so
SO_DEF=$(SODEF_$(SHARED))
SO_LIB=$(SOLIB_$(SHARED))
SO_INST=$(SOINST_$(SHARED))
CFLAGS=-Wall $(XCFLAGS) $(INC) $(DEF) $(OPT) $(SO_DEF)
LDFLAGS=$(XLDFLAGS)
-incdir=$(prefix)/include/librtmp
-bindir=$(prefix)/bin
-libdir=$(prefix)/lib
-mandir=$(prefix)/man
-BINDIR=$(DESTDIR)$(bindir)
-INCDIR=$(DESTDIR)$(incdir)
-LIBDIR=$(DESTDIR)$(libdir)
-MANDIR=$(DESTDIR)$(mandir)
OBJS=rtmp.o log.o amf.o hashswf.o parseurl.o
all: librtmp.a $(SO_LIB)
clean:
- rm -f *.o *.a *.so *.$(SO_EXT)
+ rm -f *.o *.a *.$(SOX) *.$(SO_EXT)
librtmp.a: $(OBJS)
$(AR) rs $@ $?
librtmp.$(SO_EXT): $(OBJS)
$(CC) $(SO_LDFLAGS) $(LDFLAGS) -o $@ $^ $> $(CRYPTO_LIB)
- ln -sf $@ librtmp.so
+ ln -sf $@ librtmp.$(SOX)
log.o: log.c log.h Makefile
rtmp.o: rtmp.c rtmp.h rtmp_sys.h handshake.h dh.h log.h amf.h Makefile
cp librtmp.pc $(LIBDIR)/pkgconfig
cp librtmp.3 $(MANDIR)/man3
-install_so.$(SO_VERSION): librtmp.$(SO_EXT)
- cp librtmp.$(SO_EXT) $(LIBDIR)
- cd $(LIBDIR); ln -sf librtmp.$(SO_EXT) librtmp.so
-
-install_$(SO_VERSION).dylib: librtmp.$(SO_EXT)
- cp librtmp.$(SO_EXT) $(LIBDIR)
- cd $(LIBDIR); ln -sf librtmp.$(SO_EXT) librtmp.dylib
+install_so: librtmp.$(SO_EXT)
+ cp librtmp.$(SO_EXT) $(SODIR)
+ cd $(SODIR); ln -sf librtmp.$(SO_EXT) librtmp.$(SOX)
-install_dll: librtmp.dll
- cp librtmp.dll $(BINDIR)