summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Sustrik <sustrik@250bpm.com>2010-02-24 09:17:05 +0100
committerMartin Sustrik <sustrik@250bpm.com>2010-02-24 09:17:05 +0100
commitccd47f1ee8c9268b99478c6cce3d8b1aada62566 (patch)
tree680e9b474e22321ab0401bc899b90b31e463c4da
parent8980a985828579d03f031b18a1bebcd65eded417 (diff)
chat example moved to separate repo
-rw-r--r--Makefile.am4
-rw-r--r--configure.in13
-rw-r--r--examples/Makefile.am7
-rw-r--r--examples/chat/Makefile.am11
-rw-r--r--examples/chat/README42
-rw-r--r--examples/chat/display.cpp50
-rw-r--r--examples/chat/prompt.cpp67
7 files changed, 3 insertions, 191 deletions
diff --git a/Makefile.am b/Makefile.am
index b4145c4..0f9689d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4,8 +4,8 @@ if BUILD_PERF
DIR_PERF = perf
endif
-SUBDIRS = src doc $(DIR_PERF) devices bindings examples
-DIST_SUBDIRS = src doc perf devices bindings examples
+SUBDIRS = src doc $(DIR_PERF) devices bindings
+DIST_SUBDIRS = src doc perf devices bindings
EXTRA_DIST = \
$(top_srcdir)/foreign/openpgm/@pgm_basename@.tar.bz2 \
diff --git a/configure.in b/configure.in
index b2607bb..c113845 100644
--- a/configure.in
+++ b/configure.in
@@ -589,13 +589,6 @@ if test "x$with_perf" = "xno" -a "x$with_pgm_examples" = "xyes"; then
AC_MSG_ERROR([cannot configure --with-pgm-examples without --with-perf.]);
fi
-# Chat example
-chat="no"
-AC_ARG_WITH([chat], [AS_HELP_STRING([--with-chat], [build chatroom example [default=no]])], [with_chat=yes], [with_chat=no])
-if test "x$with_chat" != "xno"; then
- chat="yes"
-fi
-
AM_CONDITIONAL(BUILD_PYTHON, test "x$pyzmq" = "xyes")
AM_CONDITIONAL(BUILD_JAVA, test "x$jzmq" = "xyes")
AM_CONDITIONAL(BUILD_PYTHON, test "x$pyzmq" = "xyes")
@@ -608,7 +601,6 @@ AM_CONDITIONAL(BUILD_FORWARDER, test "x$forwarder" = "xyes")
AM_CONDITIONAL(BUILD_STREAMER, test "x$streamer" = "xyes")
AM_CONDITIONAL(BUILD_QUEUE, test "x$queue" = "xyes")
AM_CONDITIONAL(BUILD_PERF, test "x$perf" = "xyes")
-AM_CONDITIONAL(BUILD_CHAT, test "x$chat" = "xyes")
AM_CONDITIONAL(ON_MINGW, test "x$on_mingw32" = "xyes")
AM_CONDITIONAL(BUILD_PGM_EXAMPLES, test "x$with_pgm_examples" = "xyes")
AM_CONDITIONAL(INSTALL_MAN, test "x$install_man" = "xyes")
@@ -631,8 +623,7 @@ AC_OUTPUT(Makefile src/Makefile doc/Makefile bindings/python/Makefile \
bindings/java/Makefile perf/Makefile perf/c/Makefile perf/cpp/Makefile \
perf/python/Makefile perf/ruby/Makefile perf/java/Makefile src/libzmq.pc \
devices/Makefile devices/zmq_forwarder/Makefile \
- devices/zmq_streamer/Makefile devices/zmq_queue/Makefile bindings/Makefile \
- examples/Makefile examples/chat/Makefile)
+ devices/zmq_streamer/Makefile devices/zmq_queue/Makefile bindings/Makefile)
# On Linux patch libtool to delete hardcoded paths (rpath).
case "${host_os}" in
@@ -674,8 +665,6 @@ AC_MSG_RESULT([ Forwarder: $forwarder])
AC_MSG_RESULT([ Streamer: $streamer])
AC_MSG_RESULT([ Queue: $queue])
AC_MSG_RESULT([ Performance tests: $perf])
-AC_MSG_RESULT([ Examples:])
-AC_MSG_RESULT([ Chat: $chat])
AC_MSG_RESULT([])
AC_MSG_RESULT([ ******************************************************** ])
AC_MSG_RESULT([])
diff --git a/examples/Makefile.am b/examples/Makefile.am
deleted file mode 100644
index 6a76990..0000000
--- a/examples/Makefile.am
+++ /dev/null
@@ -1,7 +0,0 @@
-
-if BUILD_CHAT
-DIR_CHAT = chat
-endif
-
-SUBDIRS = $(DIR_CHAT)
-DIST_SUBDIRS = chat
diff --git a/examples/chat/Makefile.am b/examples/chat/Makefile.am
deleted file mode 100644
index e14094f..0000000
--- a/examples/chat/Makefile.am
+++ /dev/null
@@ -1,11 +0,0 @@
-INCLUDES = -I$(top_builddir)/bindings/c -I$(top_builddir)/bindings/cpp
-
-noinst_PROGRAMS = display prompt
-
-display_SOURCES = display.cpp
-display_LDADD = $(top_builddir)/src/libzmq.la
-display_CXXFLAGS = -Wall -pedantic -Werror
-
-prompt_SOURCES = prompt.cpp
-prompt_LDADD = $(top_builddir)/src/libzmq.la
-prompt_CXXFLAGS = -Wall -pedantic -Werror
diff --git a/examples/chat/README b/examples/chat/README
deleted file mode 100644
index b93aefd..0000000
--- a/examples/chat/README
+++ /dev/null
@@ -1,42 +0,0 @@
-
-This example is a simple instant messaging implementation. There are multiple
-participants in the chat, both sending and reading messages. The sending
-application 'prompt' is separated from the application displaying the chat
-'display' so that there's no need for sophisticated GUI.
-
-To run the example you'll need both applications plus the 'forwarder' device
-that will play role of messaging server (chatroom). Build it this way:
-
-$ ./autogen.sh
-$ ./configure --with-chat --with-forwarder
-$ make
-$ sudo make install
-
-Once it is built create the configuration file (say config.xml) for the
-forwarder describing which network endpoints are to be used for incoming and
-outgoing messages:
-
-<forwarder>
- <in>
- <bind addr = "tcp://eth0:5555"/>
- </in>
- <out>
- <bind addr = "tcp://eth0:5556"/>
- </out>
-</forwarder>
-
-You are of course free to define mutliple endpoints for either incoming or
-outgoing messages.
-
-Now start the forwarder:
-
-$ zmq_forwarder ./config.xml
-
-At this point the messaging server is ready to accept connections from
-messaging clients. When starting the sending application, specify your name
-so that messages can be attributed to you:
-
-$ ./prompt tcp://myserver:5555 "John Doe"
-
-$ ./display tcp://myserver:5556
-
diff --git a/examples/chat/display.cpp b/examples/chat/display.cpp
deleted file mode 100644
index c689352..0000000
--- a/examples/chat/display.cpp
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- Copyright (c) 2007-2010 iMatix Corporation
-
- This file is part of 0MQ.
-
- 0MQ is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- 0MQ is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <zmq.hpp>
-#include <stdio.h>
-#include <string.h>
-#include <assert.h>
-
-int main (int argc, const char *argv [])
-{
- // Check the command line syntax.
- if (argc != 2) {
- fprintf (stderr, "usage: display <address>\n");
- return 1;
- }
-
- // Retrieve command line arguments
- const char *address = argv [1];
-
- // Initialise 0MQ infrastructure.
- zmq::context_t ctx (1, 1);
- zmq::socket_t s (ctx, ZMQ_SUB);
- s.setsockopt (ZMQ_SUBSCRIBE, "", 0);
- s.connect (address);
-
- while (true) {
-
- // Get a message and print it to the console.
- zmq::message_t msg;
- s.recv (&msg);
- fprintf (stdout, "%s", (char*) msg.data ());
- fflush (stdout);
- }
-}
diff --git a/examples/chat/prompt.cpp b/examples/chat/prompt.cpp
deleted file mode 100644
index 540ac16..0000000
--- a/examples/chat/prompt.cpp
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- Copyright (c) 2007-2010 iMatix Corporation
-
- This file is part of 0MQ.
-
- 0MQ is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- 0MQ is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <zmq.hpp>
-#include <stdio.h>
-#include <string.h>
-#include <assert.h>
-
-int main (int argc, const char *argv [])
-{
- // Check the command line syntax.
- if (argc != 3) {
- fprintf (stderr, "usage: prompt <address> <username>\n");
- return 1;
- }
-
- // Retrieve command line arguments
- const char *address = argv [1];
- const char *username = argv [2];
-
- // Initialise 0MQ infrastructure.
- zmq::context_t ctx (1, 1);
- zmq::socket_t s (ctx, ZMQ_PUB);
- s.connect (address);
-
- // Prepare a message buffer. Place username at the beginning
- // of the message.
- char textbuf [1024];
-#ifdef _MSC_VER
- _snprintf_s (textbuf, sizeof (textbuf), sizeof (textbuf), "%s: ",
- username);
-#else
- snprintf (textbuf, sizeof (textbuf), "%s: ", username);
-#endif
- size_t prefixsz = strlen (textbuf);
- char *text = textbuf + prefixsz;
-
- while (true) {
-
- // Let user type the enter the message text.
- char *rcc = fgets (text, sizeof (textbuf) - prefixsz, stdin);
- assert (rcc);
-
- // Create the message (terminating zero is part of the message).
- zmq::message_t msg (strlen (textbuf) + 1);
- memcpy (msg.data (), textbuf, msg.size ());
-
- // Send the message
- s.send (msg);
- }
-}