apps: refactor uri and update build infra

Change-Id: Ifa9966a27586a1a65038d069cf4a1e6e21a72d45
Signed-off-by: Florin Coras <fcoras@cisco.com>
diff --git a/doxygen/Makefile b/doxygen/Makefile
index 5870530..0661fc9 100644
--- a/doxygen/Makefile
+++ b/doxygen/Makefile
@@ -54,7 +54,6 @@
 	$(DOXY_SRC)/vnet \
 	$(DOXY_SRC)/vpp \
 	$(DOXY_SRC)/vpp-api \
-	$(DOXY_SRC)/uri \
 	$(DOXY_SRC)/examples
 
 # Input directories and files
diff --git a/extras/apps/.gitignore b/extras/apps/.gitignore
new file mode 100644
index 0000000..16e0133
--- /dev/null
+++ b/extras/apps/.gitignore
@@ -0,0 +1,3 @@
+.deps
+.dirstamp
+
diff --git a/extras/apps/Makefile.am b/extras/apps/Makefile.am
new file mode 100644
index 0000000..5bff246
--- /dev/null
+++ b/extras/apps/Makefile.am
@@ -0,0 +1,41 @@
+# Copyright (c) 2017 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+AUTOMAKE_OPTIONS = foreign subdir-objects
+
+ACLOCAL_AMFLAGS = -I m4
+
+AM_CFLAGS = -Wall
+
+SRCS_C := $(shell find . -name "*.c" )
+SRCS_H := $(shell find . -name "*.h" )
+
+.PHONY: fixstyle
+fixstyle:
+	@echo Fixing code style...
+	indent $(SRCS_C) $(SRCS_H)
+	@echo Code style fixed!
+
+#
+# Socket client and server apps
+#
+socket_echo_client_SOURCES = src/socket_echo_client.c
+socket_echo_client_LDADD = -lvppinfra
+socket_echo_client_CFLAGS = $(AM_CPPFLAGS) -Isrc
+
+socket_echo_server_SOURCES = src/socket_echo_server.c
+socket_echo_server_LDADD = -lvppinfra
+socket_echo_server_CFLAGS = $(AM_CPPFLAGS) -Isrc
+
+noinst_PROGRAMS = socket_echo_client socket_echo_server
+
diff --git a/extras/apps/bootstrap b/extras/apps/bootstrap
new file mode 100755
index 0000000..5613c2b
--- /dev/null
+++ b/extras/apps/bootstrap
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+autoreconf -fis
diff --git a/extras/apps/configure.ac b/extras/apps/configure.ac
new file mode 100644
index 0000000..27f16af
--- /dev/null
+++ b/extras/apps/configure.ac
@@ -0,0 +1,11 @@
+AC_INIT(apps, 1.0)
+LT_INIT
+AM_INIT_AUTOMAKE
+AM_SILENT_RULES([yes])
+AC_PREFIX_DEFAULT([/usr])
+
+AC_PROG_CC
+
+AC_OUTPUT([Makefile])
+
+AC_CONFIG_MACRO_DIR([m4])
diff --git a/src/uri/uri_socket_test.c b/extras/apps/src/socket_echo_client.c
similarity index 100%
rename from src/uri/uri_socket_test.c
rename to extras/apps/src/socket_echo_client.c
diff --git a/src/uri/uri_socket_server.c b/extras/apps/src/socket_echo_server.c
similarity index 100%
rename from src/uri/uri_socket_server.c
rename to extras/apps/src/socket_echo_server.c
diff --git a/src/Makefile.am b/src/Makefile.am
index 04b6c5c..7e6fda5 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -68,7 +68,6 @@
 include vnet.am
 include vpp.am
 include vpp-api-test.am
-include uri.am
 include vcl.am
 
 SUBDIRS += plugins
diff --git a/src/uri/uri_tcp_test.c b/src/tests/vnet/session/tcp_echo.c
old mode 100755
new mode 100644
similarity index 100%
rename from src/uri/uri_tcp_test.c
rename to src/tests/vnet/session/tcp_echo.c
diff --git a/src/uri/uri_udp_test.c b/src/tests/vnet/session/udp_echo.c
similarity index 100%
rename from src/uri/uri_udp_test.c
rename to src/tests/vnet/session/udp_echo.c
diff --git a/src/uri.am b/src/uri.am
deleted file mode 100644
index 11dae54..0000000
--- a/src/uri.am
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright (c) 2017 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-noinst_PROGRAMS +=				\
-	uri_udp_test				\
-	uri_tcp_test				\
-	uri_socket_test				\
-	uri_socket_server
-
-uri_udp_test_SOURCES = uri/uri_udp_test.c
-uri_udp_test_LDADD = libvlibmemoryclient.la libsvm.la \
-	libvppinfra.la -lpthread -lm -lrt
-
-uri_tcp_test_SOURCES = uri/uri_tcp_test.c
-uri_tcp_test_LDADD = libvlibmemoryclient.la libsvm.la \
-	libvppinfra.la -lpthread -lm -lrt
-
-uri_socket_test_SOURCES = uri/uri_socket_test.c
-uri_socket_test_LDADD = libvppinfra.la -lpthread -lm -lrt
-
-uri_socket_server_SOURCES = uri/uri_socket_server.c
-uri_socket_server_LDADD = libvppinfra.la -lpthread -lm -lrt
-
diff --git a/src/vnet.am b/src/vnet.am
index ae125bc..35a072f 100644
--- a/src/vnet.am
+++ b/src/vnet.am
@@ -1188,6 +1188,21 @@
 API_FILES += vnet/bier/bier.api
 
 ########################################
+# Test apps
+########################################
+
+noinst_PROGRAMS += tcp_echo udp_echo
+
+TEST_APPS_LDADD = libvlibmemoryclient.la libsvm.la libvppinfra.la
+TEST_APPS_LDADD += -lpthread -lm -lrt
+
+tcp_echo_SOURCES = tests/vnet/session/tcp_echo.c
+tcp_echo_LDADD = $(TEST_APPS_LDADD)
+
+udp_echo_SOURCES = tests/vnet/session/udp_echo.c
+udp_echo_LDADD = $(TEST_APPS_LDADD)
+
+########################################
 # Plugin client library
 ########################################