Update PowerPC (qppc) platform to build with Ubuntu cross-tools
authorDamjan Marion <[email protected]>
Fri, 26 Feb 2016 12:46:57 +0000 (13:46 +0100)
committerDamjan Marion <[email protected]>
Fri, 26 Feb 2016 18:48:10 +0000 (19:48 +0100)
Standard Ubuntu PowerPC toolchain can be installed with:

  apt-get install crossbuild-essential-powerpc

And code can be built with:

  make PLATFORM=qppc TAG=qppc ...

Change-Id: I247355fc89fd61aedb8693156e84c454ca86eb75
Signed-off-by: Damjan Marion <[email protected]>
build-data/packages/vlib-api-no-dpdk.mk [deleted file]
build-data/packages/vlib-no-dpdk.mk [deleted file]
build-data/packages/vnet-no-dpdk.mk [deleted file]
build-data/packages/vpp-api-test-no-dpdk.mk [deleted file]
build-data/packages/vpp-no-dpdk.mk [deleted file]
build-data/platforms/qppc.mk
vpp/vnet/main.c

diff --git a/build-data/packages/vlib-api-no-dpdk.mk b/build-data/packages/vlib-api-no-dpdk.mk
deleted file mode 100644 (file)
index 031cc19..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-vlib-api-no-dpdk_source = vlib-api
-
-vlib-api-no-dpdk_configure_depend = vppinfra-install svm-install vlib-no-dpdk-install
-
-vlib-api-no-dpdk_CPPFLAGS = $(call installed_includes_fn, vppinfra svm vlib-no-dpdk)
-vlib-api-no-dpdk_LDFLAGS = $(call installed_libs_fn, vppinfra svm vlib-no-dpdk)
diff --git a/build-data/packages/vlib-no-dpdk.mk b/build-data/packages/vlib-no-dpdk.mk
deleted file mode 100644 (file)
index f3869c5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-vlib-no-dpdk_source = vlib
-vlib-no-dpdk_configure_depend = vppinfra-install
-
-vlib-no-dpdk_CPPFLAGS = $(call installed_includes_fn, vppinfra)
-vlib-no-dpdk_LDFLAGS = $(call installed_libs_fn, vppinfra)
diff --git a/build-data/packages/vnet-no-dpdk.mk b/build-data/packages/vnet-no-dpdk.mk
deleted file mode 100644 (file)
index ccbd490..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-vnet-no-dpdk_source = vnet
-
-vnet-no-dpdk_configure_depend =                \
-    vppinfra-install                           \
-    svm-install                                        \
-    openssl-install                            \
-    vlib-api-no-dpdk-install                           \
-    vlib-no-dpdk-install 
-
-vnet-no-dpdk_CPPFLAGS = $(call installed_includes_fn,  \
-    vppinfra                                   \
-    openssl                                    \
-    svm                                                \
-    vlib-no-dpdk                                       \
-    vlib-api-no-dpdk)
-
-vnet-no-dpdk_LDFLAGS = $(call installed_libs_fn,       \
-    vppinfra                                   \
-    openssl                                    \
-    svm                                                \
-    vlib-no-dpdk                                       \
-    vlib-api-no-dpdk)
-
-# Platform dependent configure flags
-vnet-no-dpdk_configure_args += $(vnet-no-dpdk_configure_args_$(PLATFORM))
-
diff --git a/build-data/packages/vpp-api-test-no-dpdk.mk b/build-data/packages/vpp-api-test-no-dpdk.mk
deleted file mode 100644 (file)
index 7aab11c..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-vpp-api-test-no-dpdk_source = vpp-api-test
-
-vpp-api-test-no-dpdk_configure_depend =                \
-       vppinfra-install                        \
-       svm-install                             \
-       vlib-api-no-dpdk-install                \
-       vlib-no-dpdk-install                    \
-       vnet-no-dpdk-install                    \
-       vpp-no-dpdk-install
-
-# 
-vpp-api-test-no-dpdk_configure_args = 
-
-vpp-api-test-no-dpdk_CPPFLAGS = $(call installed_includes_fn,  \
-       vppinfra                                                \
-       svm                                                     \
-       vlib-no-dpdk                                            \
-       vlib-api-no-dpdk                                        \
-       vnet-no-dpdk                                            \
-       vpp-no-dpdk)
-
-vpp-api-test-no-dpdk_LDFLAGS = $(call installed_libs_fn,       \
-       vppinfra                                                \
-       svm                                                     \
-       vlib-no-dpdk                                            \
-       vlib-api-no-dpdk                                        \
-       vnet-no-dpdk                                            \
-       vpp-no-dpdk)
-
diff --git a/build-data/packages/vpp-no-dpdk.mk b/build-data/packages/vpp-no-dpdk.mk
deleted file mode 100644 (file)
index 81f3f75..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-vpp-no-dpdk_source = vpp
-
-vpp-no-dpdk_configure_depend =                 \
-       vppinfra-install                        \
-       openssl-install                         \
-       svm-install                             \
-       vlib-api-no-dpdk-install                \
-       vlib-no-dpdk-install                    \
-       vnet-no-dpdk-install
-
-# 
-vpp-no-dpdk_configure_args = 
-
-# Platform dependent configure flags
-vpp-no-dpdk_configure_args += $(vpp-no-dpdk_configure_args_$(PLATFORM))
-
-
-vpp-no-dpdk_CPPFLAGS = $(call installed_includes_fn,   \
-       vppinfra                                        \
-        openssl                                                \
-       svm                                             \
-       vlib-no-dpdk                                    \
-       vlib-api-no-dpdk                                \
-       vnet-no-dpdk)
-
-vpp-no-dpdk_LDFLAGS = $(call installed_libs_fn,        \
-       vppinfra                                \
-       openssl                                 \
-       svm                                     \
-       vlib-no-dpdk                            \
-       vlib-api-no-dpdk                        \
-       vnet-no-dpdk)
index fe0f868..3206928 100644 (file)
@@ -1,23 +1,34 @@
 # Qemu "p-series" powerpc64 
 
-qppc_arch = powerpc64
+qppc_os = linux-gnu
 
-qppc_root_packages = vppinfra openssl vlib-no-dpdk vlib-api-no-dpdk vnet-no-dpdk svm \
-       vpp-no-dpdk vpp-api-test-no-dpdk
+qppc_cross_ldflags = \
+    -Wl,--dynamic-linker=/lib64/ld64.so.1
 
-vpp_configure_args_qppc = 
-vnet-no-dpdk_configure_args_qppc = # nothing
-vlib-no-dpdk_configure_args_qppc = --with-pre-data=128
+qppc_arch = powerpc
+
+qppc_root_packages = vppinfra vlib vlib-api vnet svm \
+       vpp vpp-api-test
+
+vnet_configure_args_qppc = \
+       --without-ipsec --without-vcgn --without-ipv6sr
+
+vpp_configure_args_qppc = \
+       --without-ipsec --without-vcgn --without-ipv6sr
+
+vlib_configure_args_qppc = --with-pre-data=128
 
 qppc_march=powerpc64
 
 # native tool chain additions for this platform
-qppc_native_tools = vppapigen vppversion
+qppc_native_tools = vppapigen
+
+qppc_uses_dpdk = no
 
-qppc_debug_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -DCLIB_LOG2_CACHE_LINE_BYTES=6 -maltivec
-qppc_debug_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -DCLIB_LOG2_CACHE_LINE_BYTES=6 -maltivec
+qppc_debug_TAG_CFLAGS = -m64 -g -O0 -DCLIB_DEBUG -DCLIB_LOG2_CACHE_LINE_BYTES=6 -maltivec
+qppc_debug_TAG_LDFLAGS = -m64 -g -O0 -DCLIB_DEBUG -DCLIB_LOG2_CACHE_LINE_BYTES=6 -maltivec
 
-qppc_TAG_CFLAGS = -g -O2 -DCLIB_LOG2_CACHE_LINE_BYTES=6 -maltivec
-qppc_TAG_LDFLAGS = -g -O2 -DCLIB_LOG2_CACHE_LINE_BYTES=6 -maltivec
+qppc_TAG_CFLAGS = -m64 -g -O2 -DCLIB_LOG2_CACHE_LINE_BYTES=6 -maltivec
+qppc_TAG_LDFLAGS = -m64 -g -O2 -DCLIB_LOG2_CACHE_LINE_BYTES=6 -maltivec
 
 
index 08e8813..290b5c0 100644 (file)
@@ -268,32 +268,6 @@ u32 vlib_app_num_thread_stacks_needed (void)
  * messages!
  */
 
-#if IPV6SR == 0
-#define foreach_ipv6_sr_stub_node \
-_(ipsec-output, ipsec_output)
-#else
-#define foreach_ipv6_sr_stub_node
-#endif
-
-#define _(n,m)                                          \
-static uword                                            \
-m##_node_fn (vlib_main_t *vm,                           \
-           vlib_node_runtime_t *node,                   \
-           vlib_frame_t *frame)                         \
-{                                                       \
-  clib_warning("unimplemented, leaking buffers...");    \
-  return 0;                                             \
-}                                                       \
-                                                        \
-VLIB_REGISTER_NODE(m##_node) = {                        \
-  .function = m##_node_fn,                              \
-  .name = #n,                                           \
-  .vector_size = sizeof(u32),                           \
-  .type = VLIB_NODE_TYPE_INTERNAL,                      \
-};
-foreach_ipv6_sr_stub_node;
-#undef _
-
 #if CLIB_DEBUG > 0
 
 static clib_error_t *