# 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
# modification, are permitted provided that the following conditions
# are met:
-#
+#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# * Neither the name of Intel Corporation nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
-#
+#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# - define EXECENV_ASFLAGS variable (overriden by cmdline)
# - may override any previously defined variable
#
-# examples for RTE_EXEC_ENV: linuxapp, baremetal
+# examples for RTE_EXEC_ENV: linuxapp, bsdapp
#
-
+ifeq ($(RTE_BUILD_SHARED_LIB),y)
+EXECENV_CFLAGS = -pthread -fPIC
+else
EXECENV_CFLAGS = -pthread
-EXECENV_LDFLAGS =
-EXECENV_LDLIBS = -lrt
+endif
+
+EXECENV_LDFLAGS =
+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