├── server.conf ├── COMAKE ├── client.conf ├── README.md ├── echo_client.cc ├── echo_server.cc └── Makefile /server.conf: -------------------------------------------------------------------------------- 1 | port=8000 2 | thread=12 3 | -------------------------------------------------------------------------------- /COMAKE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/owenliang/boost_asio/HEAD/COMAKE -------------------------------------------------------------------------------- /client.conf: -------------------------------------------------------------------------------- 1 | host=localhost 2 | port=8000 3 | concurrent=100 4 | thread=12 5 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | boost_asio 2 | ========== 3 | 4 | how to program with boost asio. 5 | -------------------------------------------------------------------------------- /echo_client.cc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/owenliang/boost_asio/HEAD/echo_client.cc -------------------------------------------------------------------------------- /echo_server.cc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/owenliang/boost_asio/HEAD/echo_server.cc -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | #COMAKE2 edit-mode: -*- Makefile -*- 2 | ####################64Bit Mode#################### 3 | ifeq ($(shell uname -m),x86_64) 4 | CC=gcc 5 | CXX=g++ 6 | CXXFLAGS=-g \ 7 | -pipe \ 8 | -W \ 9 | -Wall \ 10 | -fPIC \ 11 | -DBOOST_ASIO_HAS_EPOLL=1 12 | CFLAGS=-g \ 13 | -pipe \ 14 | -W \ 15 | -Wall \ 16 | -fPIC 17 | CPPFLAGS=-D_GNU_SOURCE \ 18 | -D__STDC_LIMIT_MACROS \ 19 | -DVERSION=\"1.9.8.7\" 20 | INCPATH=-I. \ 21 | -I./include \ 22 | -I./output \ 23 | -I./output/include 24 | DEP_INCPATH=-I/usr/local/include/boost 25 | 26 | #============ CCP vars ============ 27 | CCHECK=@ccheck.py 28 | CCHECK_FLAGS= 29 | PCLINT=@pclint 30 | PCLINT_FLAGS= 31 | CCP=@ccp.py 32 | CCP_FLAGS= 33 | 34 | 35 | #COMAKE UUID 36 | COMAKE_MD5=f18a0d6043f6389205a1b7f7a7fd76d3 COMAKE 37 | 38 | 39 | .PHONY:all 40 | all:comake2_makefile_check output-bin echo_server echo_client 41 | @echo "[COMAKE:BUILD][Target:'all']" 42 | @echo "make all done" 43 | 44 | .PHONY:comake2_makefile_check 45 | comake2_makefile_check: 46 | @echo "[COMAKE:BUILD][Target:'comake2_makefile_check']" 47 | #in case of error, update 'Makefile' by 'comake2' 48 | @echo "$(COMAKE_MD5)">comake2.md5 49 | @md5sum -c --status comake2.md5 50 | @rm -f comake2.md5 51 | 52 | .PHONY:ccpclean 53 | ccpclean: 54 | @echo "[COMAKE:BUILD][Target:'ccpclean']" 55 | @echo "make ccpclean done" 56 | 57 | .PHONY:clean 58 | clean:ccpclean 59 | @echo "[COMAKE:BUILD][Target:'clean']" 60 | rm -rf output-bin 61 | rm -rf output; 62 | rm -rf echo_server 63 | rm -rf ./output/bin/echo_server 64 | rm -rf echo_client 65 | rm -rf ./output/bin/echo_client 66 | rm -rf echo_server_echo_server.o 67 | rm -rf echo_client_echo_client.o 68 | 69 | .PHONY:dist 70 | dist: 71 | @echo "[COMAKE:BUILD][Target:'dist']" 72 | tar czvf output.tar.gz output 73 | @echo "make dist done" 74 | 75 | .PHONY:distclean 76 | distclean:clean 77 | @echo "[COMAKE:BUILD][Target:'distclean']" 78 | rm -f output.tar.gz 79 | @echo "make distclean done" 80 | 81 | .PHONY:love 82 | love: 83 | @echo "[COMAKE:BUILD][Target:'love']" 84 | @echo "make love done" 85 | 86 | output-bin: 87 | @echo "[COMAKE:BUILD][Target:'output-bin']" 88 | echo "build output-bin over" 89 | 90 | echo_server:echo_server_echo_server.o 91 | @echo "[COMAKE:BUILD][Target:'echo_server']" 92 | $(CXX) echo_server_echo_server.o -Xlinker "-(" /usr/local/lib/libboost_atomic.a \ 93 | /usr/local/lib/libboost_chrono.a \ 94 | /usr/local/lib/libboost_container.a \ 95 | /usr/local/lib/libboost_context.a \ 96 | /usr/local/lib/libboost_coroutine.a \ 97 | /usr/local/lib/libboost_date_time.a \ 98 | /usr/local/lib/libboost_exception.a \ 99 | /usr/local/lib/libboost_filesystem.a \ 100 | /usr/local/lib/libboost_graph.a \ 101 | /usr/local/lib/libboost_locale.a \ 102 | /usr/local/lib/libboost_log_setup.a \ 103 | /usr/local/lib/libboost_log.a \ 104 | /usr/local/lib/libboost_math_c99.a \ 105 | /usr/local/lib/libboost_math_c99f.a \ 106 | /usr/local/lib/libboost_math_c99l.a \ 107 | /usr/local/lib/libboost_math_tr1.a \ 108 | /usr/local/lib/libboost_math_tr1f.a \ 109 | /usr/local/lib/libboost_math_tr1l.a \ 110 | /usr/local/lib/libboost_prg_exec_monitor.a \ 111 | /usr/local/lib/libboost_program_options.a \ 112 | /usr/local/lib/libboost_random.a \ 113 | /usr/local/lib/libboost_regex.a \ 114 | /usr/local/lib/libboost_serialization.a \ 115 | /usr/local/lib/libboost_signals.a \ 116 | /usr/local/lib/libboost_system.a \ 117 | /usr/local/lib/libboost_test_exec_monitor.a \ 118 | /usr/local/lib/libboost_thread.a \ 119 | /usr/local/lib/libboost_timer.a \ 120 | /usr/local/lib/libboost_unit_test_framework.a \ 121 | /usr/local/lib/libboost_wave.a \ 122 | /usr/local/lib/libboost_wserialization.a \ 123 | -lrt -Xlinker "-)" -o echo_server 124 | mkdir -p ./output/bin 125 | cp -f --link echo_server ./output/bin 126 | 127 | echo_client:echo_client_echo_client.o 128 | @echo "[COMAKE:BUILD][Target:'echo_client']" 129 | $(CXX) echo_client_echo_client.o -Xlinker "-(" /usr/local/lib/libboost_atomic.a \ 130 | /usr/local/lib/libboost_chrono.a \ 131 | /usr/local/lib/libboost_container.a \ 132 | /usr/local/lib/libboost_context.a \ 133 | /usr/local/lib/libboost_coroutine.a \ 134 | /usr/local/lib/libboost_date_time.a \ 135 | /usr/local/lib/libboost_exception.a \ 136 | /usr/local/lib/libboost_filesystem.a \ 137 | /usr/local/lib/libboost_graph.a \ 138 | /usr/local/lib/libboost_locale.a \ 139 | /usr/local/lib/libboost_log_setup.a \ 140 | /usr/local/lib/libboost_log.a \ 141 | /usr/local/lib/libboost_math_c99.a \ 142 | /usr/local/lib/libboost_math_c99f.a \ 143 | /usr/local/lib/libboost_math_c99l.a \ 144 | /usr/local/lib/libboost_math_tr1.a \ 145 | /usr/local/lib/libboost_math_tr1f.a \ 146 | /usr/local/lib/libboost_math_tr1l.a \ 147 | /usr/local/lib/libboost_prg_exec_monitor.a \ 148 | /usr/local/lib/libboost_program_options.a \ 149 | /usr/local/lib/libboost_random.a \ 150 | /usr/local/lib/libboost_regex.a \ 151 | /usr/local/lib/libboost_serialization.a \ 152 | /usr/local/lib/libboost_signals.a \ 153 | /usr/local/lib/libboost_system.a \ 154 | /usr/local/lib/libboost_test_exec_monitor.a \ 155 | /usr/local/lib/libboost_thread.a \ 156 | /usr/local/lib/libboost_timer.a \ 157 | /usr/local/lib/libboost_unit_test_framework.a \ 158 | /usr/local/lib/libboost_wave.a \ 159 | /usr/local/lib/libboost_wserialization.a \ 160 | -lrt -Xlinker "-)" -o echo_client 161 | mkdir -p ./output/bin 162 | cp -f --link echo_client ./output/bin 163 | 164 | echo_server_echo_server.o:echo_server.cc 165 | @echo "[COMAKE:BUILD][Target:'echo_server_echo_server.o']" 166 | $(CXX) -c $(INCPATH) $(DEP_INCPATH) $(CPPFLAGS) $(CXXFLAGS) -o echo_server_echo_server.o echo_server.cc 167 | 168 | echo_client_echo_client.o:echo_client.cc 169 | @echo "[COMAKE:BUILD][Target:'echo_client_echo_client.o']" 170 | $(CXX) -c $(INCPATH) $(DEP_INCPATH) $(CPPFLAGS) $(CXXFLAGS) -o echo_client_echo_client.o echo_client.cc 171 | 172 | endif #ifeq ($(shell uname -m),x86_64) 173 | 174 | 175 | --------------------------------------------------------------------------------