vppinfra: add cmake option to grow vectors by 1
[vpp.git] / src / vppinfra / CMakeLists.txt
index 702f6fd..7723e6b 100644 (file)
@@ -17,12 +17,13 @@ enable_language(ASM)
 # Generate vppinfra/config.h
 ##############################################################################
 set(LOG2_CACHE_LINE_BYTES ${VPP_LOG2_CACHE_LINE_SIZE})
-option(VPP_USE_DLMALLOC "Use dlmalloc memory allocator." ON)
-if(VPP_USE_DLMALLOC)
-  set(DLMALLOC 1)
-else(VPP_USE_DLMALLOC)
-  set(DLMALLOC 0)
-endif(VPP_USE_DLMALLOC)
+
+option(VPP_VECTOR_GROW_BY_ONE "Vectors grow by one, instead of 3/2" OFF)
+if(VPP_VECTOR_GROW_BY_ONE)
+  set(VECTOR_GROW_BY_ONE 1)
+else(VPP_VECTOR_GROW_BY_ONE)
+  set(VECTOR_GROW_BY_ONE 0)
+endif(VPP_VECTOR_GROW_BY_ONE)
 
 configure_file(
   ${CMAKE_SOURCE_DIR}/vppinfra/config.h.in
@@ -39,10 +40,11 @@ install(
 # vppinfra sources
 ##############################################################################
 set(VPPINFRA_SRCS
-  asm_x86.c
   backtrace.c
+  bihash_all_vector.c
   cpu.c
   cuckoo_template.c
+  dlmalloc.c
   elf.c
   elog.c
   error.c
@@ -55,13 +57,15 @@ set(VPPINFRA_SRCS
   longjmp.S
   macros.c
   maplog.c
+  mem_dlmalloc.c
   mhash.c
+  mpcap.c
   pcap.c
   pmalloc.c
   pool.c
   ptclosure.c
-  random.c
   random_buffer.c
+  random.c
   random_isaac.c
   rbtree.c
   serialize.c
@@ -71,13 +75,12 @@ set(VPPINFRA_SRCS
   string.c
   time.c
   time_range.c
-  timer.c
   timing_wheel.c
-  tw_timer_2t_1w_2048sl.c
-  tw_timer_16t_2w_512sl.c
   tw_timer_16t_1w_2048sl.c
-  tw_timer_4t_3w_256sl.c
+  tw_timer_16t_2w_512sl.c
   tw_timer_1t_3w_1024sl_ov.c
+  tw_timer_2t_1w_2048sl.c
+  tw_timer_4t_3w_256sl.c
   unformat.c
   unix-formats.c
   unix-misc.c
@@ -88,8 +91,7 @@ set(VPPINFRA_SRCS
 )
 
 set(VPPINFRA_HEADERS
-  asm_mips.h
-  asm_x86.h
+  sanitizer.h
   bihash_16_8.h
   bihash_24_8.h
   bihash_40_8.h
@@ -102,6 +104,7 @@ set(VPPINFRA_HEADERS
   bitops.h
   byte_order.h
   cache.h
+  callback.h
   clib_error.h
   clib.h
   cpu.h
@@ -124,6 +127,7 @@ set(VPPINFRA_HEADERS
   hash.h
   heap.h
   lb_hash_hash.h
+  llist.h
   lock.h
   longjmp.h
   macros.h
@@ -134,8 +138,8 @@ set(VPPINFRA_HEADERS
   memcpy_sse3.h
   mem.h
   mhash.h
-  mheap_bootstrap.h
   mheap.h
+  mpcap.h
   os.h
   pcap.h
   pcap_funcs.h
@@ -157,7 +161,6 @@ set(VPPINFRA_HEADERS
   string.h
   time.h
   time_range.h
-  timer.h
   timing_wheel.h
   tw_timer_16t_1w_2048sl.h
   tw_timer_16t_2w_512sl.h
@@ -169,7 +172,6 @@ set(VPPINFRA_HEADERS
   types.h
   atomics.h
   unix.h
-  valgrind.h
   valloc.h
   vec_bootstrap.h
   vec.h
@@ -195,19 +197,6 @@ if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
    )
 endif()
 
-
-if(VPP_USE_DLMALLOC)
-  list(APPEND VPPINFRA_SRCS
-    dlmalloc.c
-    mem_dlmalloc.c
-  )
-else(VPP_USE_DLMALLOC)
-  list(APPEND VPPINFRA_SRCS
-    mheap.c
-    mem_mheap.c
-  )
-endif(VPP_USE_DLMALLOC)
-
 add_vpp_library(vppinfra
   SOURCES ${VPPINFRA_SRCS}
   LINK_LIBRARIES m
@@ -240,9 +229,11 @@ if(VPP_BUILD_VPPINFRA_TESTS)
     ptclosure
     random
     random_isaac
+    rwlock
     serialize
     slist
     socket
+    spinlock
     time
     time_range
     timing_wheel
@@ -253,7 +244,7 @@ if(VPP_BUILD_VPPINFRA_TESTS)
   )
     add_vpp_executable(test_${test}
       SOURCES test_${test}.c
-      LINK_LIBRARIES vppinfra
+      LINK_LIBRARIES vppinfra pthread
       )
   endforeach()