You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
libUDPTCPNetwork/Makefile

109 lines
2.6 KiB

.SILENT: help
VERSION=0.1
OBJLIB_NAME=UDPTCPNetwork
-include Makefile.rules
DEFAULT_TCPPORT=6131
DEFAULT_UDPPORT=6131
DEFAULT_SERVER=localhost
OBJLIB=network.o udp.o tcp.o unix.o ssl.o
INCLIB=UDPTCPNetwork.h
ifeq ($(TARGET),)
noconfig: help
endif
all: dep $(TARGET) test-udp test-tcpserver test-tcpclient test-ssl
help:
echo "set up configuration"
echo " make configwindows to generate the windows build"
echo " make configlinux to generate the linix build"
configlinux: clean
cp -f Makefile.rules.linux Makefile.rules
configwindows: clean
cp -f Makefile.rules.windows Makefile.rules
test-tcpserver: $(TARGET) test-tcpserver.o
$(CXX) test-tcpserver.o -o $@ -lUDPTCPNetwork -L./ -I./ $(LDFLAGS)
test-tcpclient: $(TARGET) test-tcpclient.o
$(CXX) test-tcpclient.o -o $@ -lUDPTCPNetwork -L./ -I./ $(LDFLAGS)
test-ssl: $(TARGET) test-ssl.o
$(CXX) test-ssl.o -o $@ -lUDPTCPNetwork -L./ -I./ $(LDFLAGS)
test-udp: $(TARGET) test-udp.o
$(CXX) test-udp.o -o $@ -lUDPTCPNetwork -L./ -I./ $(LDFLAGS)
keygen:
# openssl req -nodes -new -newkey rsa:2048 -sha256 -out csr.pem -keyout privkey.pem
openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout privkey.pem -out cert.pem
install: $(TARGET)
cp -f $(TARGET) $(PREFIX)/lib/
if test -f "lib$(OBJLIB_NAME).so"; then cp -f lib$(OBJLIB_NAME).so $(PREFIX)/lib/ ; fi
cp -f UDPTCPNetwork.h $(PREFIX)/include/
uninstall:
rm -f $(PREFIX)/lib/$(TARGET)
rm -f $(PREFIX)/lib/lib$(OBJLIB_NAME).so
rm -f $(PREFIX)/include/UDPTCPNetwork.h
rebuild: clean all
$(TARGET): $(OBJLIB) $(INCLIB)
$(CXX) -shared $(LINKPARAMS) -o $(TARGET) $^ $(LDFLAGS)
if test -f "lib$(OBJLIB_NAME).so.$(VERSION)"; then ln -sf $(TARGET) lib$(OBJLIB_NAME).so; fi
ar rcs lib$(OBJLIB_NAME).a $(OBJLIB)
dep:
$(CXX) -MM `ls *.cc` $(CXXFLAGS) > $(DEPENDFILE)
clean:
rm Makefile.rules -rf
rm test-tcpserver -rf
rm test-tcpclient -rf
rm test-udp -rf
rm test-ssl -rf
rm -rf gmon.out
rm *.s -rf
rm *.exe -rf
rm *.o -rf
rm *.oo -rf
rm *~ -rf
rm -rf config.h
rm -rf .depend
rm -rf *.so
rm -rf *.a
rm -rf *.dll
rm -rf *.so.*
rm -rf *.pem -rf
config:
echo "#ifndef _CONFIG_H_" > config.h
echo "#define _CONFIG_H_" >> config.h
echo "" >> config.h
echo "#define UDPTCPNETWORK_VERSION \"$(VERSION)\"" >> config.h
echo "" >> config.h
echo "#define PREFIX \"$(PREFIX)\"" >> config.h
echo "#define ETCPREFIX \"$(ETCPREFIX)\"" >> config.h
echo "" >> config.h
echo "#endif" >> config.h
dist: clean
mkdir -p $(DISTNAME)
cp -rf Makefile $(DISTNAME)
cp -rf *.h $(DISTNAME)
cp -rf *.cc $(DISTNAME)
tar cvzf $(DISTNAME).tgz --exclude=*/CVS/* --exclude=*/CVS/ $(DISTNAME)
rm -rf $(DISTNAME)
-include $(DEPENDFILE)