eal: add support for shared object drivers
[dpdk.git] / mk / exec-env / linuxapp / rte.vars.mk
index 66e932f..68edaab 100644 (file)
@@ -1,6 +1,6 @@
 #   BSD LICENSE
 # 
-#   Copyright(c) 2010-2013 Intel Corporation. All rights reserved.
+#   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
 #   All rights reserved.
 # 
 #   Redistribution and use in source and binary forms, with or without
 #
 # examples for RTE_EXEC_ENV: linuxapp, baremetal
 #
-
+ifeq ($(RTE_BUILD_SHARED_LIB),y)
+EXECENV_CFLAGS  = -pthread -fPIC
+else
 EXECENV_CFLAGS  = -pthread
+endif
+
 EXECENV_LDFLAGS = 
-EXECENV_LDLIBS  = -lrt
+EXECENV_LDLIBS  = -lrt -lm
 EXECENV_ASFLAGS =
 
+ifeq ($(RTE_BUILD_SHARED_LIB),y)
+EXECENV_LDLIBS += -lgcc_s
+endif
+
 # force applications to link with gcc/icc instead of using ld
 LINK_USING_CC := 1
 
-export EXECENV_CFLAGS EXECENV_LDFLAGS EXECENV_ASFLAGS
+# For shared libraries
+EXECENV_LDFLAGS += -export-dynamic
+# Add library to the group to resolve symbols
+EXECENV_LDLIBS  += -ldl
+
+export EXECENV_CFLAGS EXECENV_LDFLAGS EXECENV_ASFLAGS EXECENV_LDLIBS