mirror of
				https://github.com/3proxy/3proxy.git
				synced 2025-11-04 07:42:39 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			103 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			103 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
#
 | 
						|
# 3 proxy Makefile for GCC/Linux/Cygwin
 | 
						|
#
 | 
						|
# You can try to remove -DWITH_STD_MALLOC to CFLAGS to use optimized malloc
 | 
						|
# libraries
 | 
						|
#
 | 
						|
# remove -DNOODBC from CFLAGS and add -lodbc to LIBS to compile with ODBC
 | 
						|
# library support. Add -DSAFESQL for poorely written ODBC library / drivers.
 | 
						|
 | 
						|
BUILDDIR = ../bin/
 | 
						|
CC = mips-openwrt-linux-gcc
 | 
						|
 | 
						|
CFLAGS = -g -O2 -fno-strict-aliasing -c -pthread -DGETHOSTBYNAME_R -D_THREAD_SAFE -D_REENTRANT -DNOODBC -DWITH_STD_MALLOC -DFD_SETSIZE=4096 -DWITH_POLL -DWITH_NETFILTER
 | 
						|
COUT = -o 
 | 
						|
LN = $(CC)
 | 
						|
DCFLAGS = -fPIC
 | 
						|
LDFLAGS = -O2 -fno-strict-aliasing -pthread -s
 | 
						|
DLFLAGS = -shared
 | 
						|
DLSUFFICS = .ld.so
 | 
						|
# -lpthreads may be reuqired on some platforms instead of -pthreads
 | 
						|
LIBSPREFIX = -l
 | 
						|
LIBSSUFFIX = 
 | 
						|
LNOUT = -o 
 | 
						|
EXESUFFICS =
 | 
						|
OBJSUFFICS = .o
 | 
						|
DEFINEOPTION = -D
 | 
						|
COMPFILES = *~
 | 
						|
REMOVECOMMAND = rm -f
 | 
						|
AFTERCLEAN = (find . -type f -name "*.o" -delete && find src/ -type f -name "Makefile.var" -delete && find bin/ -type f -executable -delete) || true
 | 
						|
TYPECOMMAND = cat
 | 
						|
COMPATLIBS =
 | 
						|
MAKEFILE = Makefile.openwrt-mips
 | 
						|
# PamAuth requires libpam, you may require pam-devel package to be installed
 | 
						|
# SSLPlugin requires  -lcrypto -lssl
 | 
						|
#LIBS = -lcrypto -lssl -ldl 
 | 
						|
LIBS = -ldl 
 | 
						|
#PLUGINS = SSLPlugin StringsPlugin TrafficPlugin PCREPlugin TransparentPlugin PamAuth
 | 
						|
PLUGINS = StringsPlugin TrafficPlugin PCREPlugin TransparentPlugin
 | 
						|
 | 
						|
include Makefile.inc
 | 
						|
 | 
						|
allplugins:
 | 
						|
	@list='$(PLUGINS)'; for p in $$list; do cp Makefile Makefile.var plugins/$$p; cd plugins/$$p ; make ;	cd ../.. ; done
 | 
						|
 | 
						|
DESTDIR		=
 | 
						|
prefix		= /usr/local
 | 
						|
exec_prefix	= $(prefix)
 | 
						|
man_prefix	= $(prefix)/share
 | 
						|
 | 
						|
INSTALL		= /usr/bin/install
 | 
						|
INSTALL_BIN	= $(INSTALL) -m 755
 | 
						|
INSTALL_DATA	= $(INSTALL) -m 644
 | 
						|
INSTALL_OBJS	= src/3proxy \
 | 
						|
		  src/ftppr \
 | 
						|
		  src/mycrypt \
 | 
						|
		  src/pop3p \
 | 
						|
		  src/proxy \
 | 
						|
		  src/socks \
 | 
						|
		  src/tcppm \
 | 
						|
		  src/udppm
 | 
						|
		  
 | 
						|
 | 
						|
INSTALL_CFG_OBJS = scripts/3proxy.cfg \
 | 
						|
		   scripts/add3proxyuser.sh
 | 
						|
INSTALL_CFG_DEST = config
 | 
						|
 | 
						|
INSTALL_CFG_OBJS2 = passwd counters bandlimiters
 | 
						|
 | 
						|
MANDIR1		= $(DESTDIR)$(man_prefix)/man/man1
 | 
						|
MANDIR3		= $(DESTDIR)$(man_prefix)/man/man3
 | 
						|
MANDIR8		= $(DESTDIR)$(man_prefix)/man/man8
 | 
						|
BINDIR		= $(DESTDIR)$(exec_prefix)/bin
 | 
						|
ETCDIR		= $(DESTDIR)$(prefix)/etc/3proxy
 | 
						|
 | 
						|
install-bin:
 | 
						|
	$(INSTALL_BIN) -d $(BINDIR)
 | 
						|
	$(INSTALL_BIN) -s $(INSTALL_OBJS) $(BINDIR)
 | 
						|
 | 
						|
install-etc-dir:
 | 
						|
	$(INSTALL_BIN) -d $(ETCDIR)
 | 
						|
 | 
						|
install-etc-default-config:
 | 
						|
	if [ -f $(ETCDIR)/$(INSTALL_CFG_DEST) ]; then \
 | 
						|
	   : ; \
 | 
						|
	else \
 | 
						|
	   $(INSTALL_DATA) $(INSTALL_CFG_OBJS) $(ETCDIR)/$(INSTALL_CFG_DEST) \
 | 
						|
	fi
 | 
						|
 | 
						|
install-etc: install-etc-dir
 | 
						|
	for file in $(INSTALL_CFG_OBJS2); \
 | 
						|
	do \
 | 
						|
	  touch $(ETCDIR)/$$file; chmod 0600 $(ETCDIR)/$$file; \
 | 
						|
	done;
 | 
						|
 | 
						|
install-man:
 | 
						|
	$(INSTALL_BIN) -d $(MANDIR3)
 | 
						|
	$(INSTALL_BIN) -d $(MANDIR8)
 | 
						|
	$(INSTALL_DATA) man/*.3 $(MANDIR3)
 | 
						|
	$(INSTALL_DATA) man/*.8 $(MANDIR8)
 | 
						|
 | 
						|
install: install-bin install-etc install-man
 | 
						|
 |