diff --git a/lib/librte_eal/bsdapp/eal/Makefile
b/lib/librte_eal/bsdapp/eal/Makefile
index d434882..3573c08 100644
--- a/lib/librte_eal/bsdapp/eal/Makefile
+++ b/lib/librte_eal/bsdapp/eal/Makefile
@@ -53,11 +53,8 @@ SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) +=
eal_hugepage_info.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_thread.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_log.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_pci.c
-SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_debug.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_lcore.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_timer.c
-SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_interrupts.c
-SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_alarm.c

 # from common dir
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_memzone.c @@ -73,6
+70,9 @@ SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_hexdump.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_devargs.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_dev.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_options.c
+SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_alarm.c
+SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_debug.c
+SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_interrupts.c

 CFLAGS_eal.o := -D_GNU_SOURCE
 #CFLAGS_eal_thread.o := -D_GNU_SOURCE
diff --git a/lib/librte_eal/common/eal_common_alarm.c
b/lib/librte_eal/common/eal_common_alarm.c
index e8da32f..abc6f74 100644
--- a/lib/librte_eal/common/eal_common_alarm.c
+++ b/lib/librte_eal/common/eal_common_alarm.c
@@ -30,6 +30,16 @@
  *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+#ifdef RTE_EXEC_ENV_BSDAPP
+#include <stdlib.h>
+#include <errno.h>
+
+#include <rte_alarm.h>
+#include <rte_common.h>
+#include "eal_private.h"
+
+#else  /* !RTE_EXEC_ENV_BSDAPP */
+
 #include <stdio.h>
 #include <stdint.h>
 #include <signal.h>
@@ -80,6 +90,33 @@ static struct rte_intr_handle intr_handle = {.fd = -1
};  static int handler_registered = 0;  static void
eal_alarm_callback(struct rte_intr_handle *hdl, void *arg);

+#endif /* RTE_EXEC_ENV_BSDAPP */
+
+#ifdef RTE_EXEC_ENV_BSDAPP
+
+int
+rte_eal_alarm_init(void)
+{
+        return 0;
+}
+
+
+int
+rte_eal_alarm_set(uint64_t us __rte_unused,
+                rte_eal_alarm_callback cb_fn __rte_unused,
+                void *cb_arg __rte_unused) {
+        return -ENOTSUP;
+}
+
+int
+rte_eal_alarm_cancel(rte_eal_alarm_callback cb_fn __rte_unused,
+                void *cb_arg __rte_unused) {
+        return -ENOTSUP;
+}
+
+#else /* !RTE_EXEC_ENV_BSDAPP */
 int
 rte_eal_alarm_init(void)
 {
@@ -94,6 +131,7 @@ rte_eal_alarm_init(void)
 error:
        rte_errno = errno;
        return -1;
+
 }

 static void
@@ -266,3 +304,5 @@ rte_eal_alarm_cancel(rte_eal_alarm_callback cb_fn, void
*cb_arg)

        return count;
 }
+
+#endif /* RTE_EXEC_ENV_BSDAPP */
diff --git a/lib/librte_eal/common/eal_common_interrupts.c
b/lib/librte_eal/common/eal_common_interrupts.c
index dc2668a..745413e 100644
--- a/lib/librte_eal/common/eal_common_interrupts.c
+++ b/lib/librte_eal/common/eal_common_interrupts.c
@@ -31,6 +31,48 @@
  *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */

+#ifdef RTE_EXEC_ENV_BSDAPP
+
+#include <rte_common.h>
+#include <rte_interrupts.h>
+#include "eal_private.h"
+
+int
+rte_intr_callback_register(struct rte_intr_handle *intr_handle
__rte_unused,
+                        rte_intr_callback_fn cb __rte_unused,
+                        void *cb_arg __rte_unused) {
+        return -ENOTSUP;
+}
+
+int
+rte_intr_callback_unregister(struct rte_intr_handle *intr_handle
__rte_unused,
+                        rte_intr_callback_fn cb_fn __rte_unused,
+                        void *cb_arg __rte_unused) {
+        return -ENOTSUP;
+}
+
+int
+rte_intr_enable(struct rte_intr_handle *intr_handle __rte_unused) {
+        return -ENOTSUP;
+}
+
+int
+rte_intr_disable(struct rte_intr_handle *intr_handle __rte_unused) {
+        return -ENOTSUP;
+}
+
+int
+rte_eal_intr_init(void)
+{
+        return 0;
+}
+
+#else   /* !RTE_EXEC_ENV_BSDAPP */
+
 #include <stdio.h>
 #include <stdint.h>
 #include <stdlib.h>
@@ -66,7 +108,7 @@
 #include <rte_spinlock.h>

 #include "eal_private.h"
-#include "eal_vfio.h"
+#include <eal_vfio.h>

 #define EAL_INTR_EPOLL_WAIT_FOREVER (-1)

@@ -824,3 +866,4 @@ rte_eal_intr_init(void)
        return -ret;
 }

+#endif   /* RTE_EXEC_ENV_BSDAPP */
diff --git a/lib/librte_eal/linuxapp/eal/Makefile
b/lib/librte_eal/linuxapp/eal/Makefile
index 72ecf3a..0e2ba30 100644
--- a/lib/librte_eal/linuxapp/eal/Makefile
+++ b/lib/librte_eal/linuxapp/eal/Makefile
@@ -62,11 +62,8 @@ SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_pci.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_pci_uio.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_pci_vfio.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_pci_vfio_mp_sync.c
-SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_debug.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_lcore.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_timer.c
-SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_interrupts.c
-SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_alarm.c  ifeq
($(CONFIG_RTE_LIBRTE_IVSHMEM),y)
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_ivshmem.c  endif @@ -85,6
+82,9 @@ SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_common_hexdump.c
 SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_common_devargs.c
