diff --git a/include/libpldm/meson.build b/include/libpldm/meson.build
index bcac312..076b0aa 100644
--- a/include/libpldm/meson.build
+++ b/include/libpldm/meson.build
@@ -1,4 +1,4 @@
-libpldm_headers += files(
+libpldm_headers = files(
   'base.h',
   'bios.h',
   'bios_table.h',
@@ -13,21 +13,27 @@
   'state_set.h',
   'states.h',
   'transport.h',
+  'transport/af-mctp.h',
+  'transport/mctp-demux.h',
   'utils.h',
   )
 
-libpldm_transport_headers += files(
-  'transport/af-mctp.h',
-  'transport/mctp-demux.h'
-)
-
 if get_option('oem-ibm').allowed()
   libpldm_headers += files(
-    'oem/ibm/libpldm/entity_oem_ibm.h',
-    'oem/ibm/libpldm/file_io.h',
-    'oem/ibm/libpldm/fru_oem_ibm.h',
-    'oem/ibm/libpldm/host.h',
-    'oem/ibm/libpldm/platform_oem_ibm.h',
-    'oem/ibm/libpldm/state_set_oem_ibm.h'
+    'oem/ibm/entity.h',
+    'oem/ibm/file_io.h',
+    'oem/ibm/fru.h',
+    'oem/ibm/host.h',
+    'oem/ibm/platform.h',
+    'oem/ibm/state_set.h'
   )
+
+  install_symlink('file_io.h', pointing_to: 'oem/ibm/file_io.h', install_dir: 'include/libpldm')
+  install_symlink('entity_oem_ibm.h', pointing_to: 'oem/ibm/entity.h', install_dir: 'include/libpldm')
+  install_symlink('fru_oem_ibm.h', pointing_to: 'oem/ibm/fru.h', install_dir: 'include/libpldm')
+  install_symlink('host.h', pointing_to: 'oem/ibm/host.h', install_dir: 'include/libpldm')
+  install_symlink('platform_oem_ibm.h', pointing_to: 'oem/ibm/platform.h', install_dir: 'include/libpldm')
+  install_symlink('state_set_oem_ibm.h', pointing_to: 'oem/ibm/state_set.h', install_dir: 'include/libpldm')
 endif
+
+install_headers(libpldm_headers, subdir: 'libpldm', preserve_path: true)
diff --git a/include/libpldm/oem/ibm/libpldm/entity_oem_ibm.h b/include/libpldm/oem/ibm/entity.h
similarity index 100%
rename from include/libpldm/oem/ibm/libpldm/entity_oem_ibm.h
rename to include/libpldm/oem/ibm/entity.h
diff --git a/include/libpldm/oem/ibm/libpldm/file_io.h b/include/libpldm/oem/ibm/file_io.h
similarity index 100%
rename from include/libpldm/oem/ibm/libpldm/file_io.h
rename to include/libpldm/oem/ibm/file_io.h
diff --git a/include/libpldm/oem/ibm/libpldm/fru_oem_ibm.h b/include/libpldm/oem/ibm/fru.h
similarity index 100%
rename from include/libpldm/oem/ibm/libpldm/fru_oem_ibm.h
rename to include/libpldm/oem/ibm/fru.h
diff --git a/include/libpldm/oem/ibm/libpldm/host.h b/include/libpldm/oem/ibm/host.h
similarity index 100%
rename from include/libpldm/oem/ibm/libpldm/host.h
rename to include/libpldm/oem/ibm/host.h
diff --git a/include/libpldm/oem/ibm/libpldm/platform_oem_ibm.h b/include/libpldm/oem/ibm/platform.h
similarity index 100%
rename from include/libpldm/oem/ibm/libpldm/platform_oem_ibm.h
rename to include/libpldm/oem/ibm/platform.h
diff --git a/include/libpldm/oem/ibm/libpldm/state_set_oem_ibm.h b/include/libpldm/oem/ibm/state_set.h
similarity index 100%
rename from include/libpldm/oem/ibm/libpldm/state_set_oem_ibm.h
rename to include/libpldm/oem/ibm/state_set.h
diff --git a/meson.build b/meson.build
index 22fb826..86b2250 100644
--- a/meson.build
+++ b/meson.build
@@ -44,47 +44,10 @@
 add_project_arguments('-include', '@0@'.format(config), language: 'c')
 
 libpldm_include_dir = include_directories('include', is_system: true)
-libpldm_headers = files()
-libpldm_transport_headers = files()
+
 subdir('include')
-
-libpldm_sources = files()
 subdir('src')
 
-libpldm = library(
-  'pldm',
-   libpldm_sources,
-   implicit_include_directories: false,
-   include_directories: [
-     libpldm_include_dir,
-     include_directories('src')
-   ],
-   version: meson.project_version(),
-   gnu_symbol_visibility: 'hidden',
-   install: true
-   )
-
-install_headers(
-  libpldm_headers,
-  subdir:'libpldm'
-  )
-
-install_headers(
-  libpldm_transport_headers,
-  subdir:'libpldm/transport'
-  )
-
-libpldm_dep = declare_dependency(
-  include_directories: libpldm_include_dir
-,
-  link_with: libpldm)
-
-import('pkgconfig').generate(
-  name: 'libpldm',
-  description: 'PLDM protocol encode/decode C lib',
-  version: meson.project_version(),
-  libraries: libpldm)
-
 if get_option('tests').enabled()
   subdir('tests')
 
diff --git a/src/meson.build b/src/meson.build
index 5b9dd2f..77fd629 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -1,4 +1,4 @@
-libpldm_sources += files(
+libpldm_sources = files(
   'base.c',
   'bios.c',
   'platform.c',
@@ -16,3 +16,26 @@
 if get_option('oem-ibm').allowed()
    subdir('oem/ibm')
 endif
+
+libpldm = library(
+  'pldm',
+   libpldm_sources,
+   implicit_include_directories: false,
+   include_directories: [
+     libpldm_include_dir,
+     include_directories('.')
+   ],
+   version: meson.project_version(),
+   gnu_symbol_visibility: 'hidden',
+   install: true
+   )
+
+libpldm_dep = declare_dependency(
+  include_directories: libpldm_include_dir,
+  link_with: libpldm)
+
+import('pkgconfig').generate(
+  name: 'libpldm',
+  description: 'PLDM protocol encode/decode C lib',
+  version: meson.project_version(),
+  libraries: libpldm)
diff --git a/src/oem/ibm/file_io.c b/src/oem/ibm/file_io.c
index 1303bf6..71acf72 100644
--- a/src/oem/ibm/file_io.c
+++ b/src/oem/ibm/file_io.c
@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later */
 #include <libpldm/base.h>
-#include <libpldm/oem/ibm/libpldm/file_io.h>
+#include <libpldm/oem/ibm/file_io.h>
 
 #include <endian.h>
 #include <string.h>
diff --git a/src/oem/ibm/host.c b/src/oem/ibm/host.c
index 6a79ac9..69e9193 100644
--- a/src/oem/ibm/host.c
+++ b/src/oem/ibm/host.c
@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later */
 #include <libpldm/base.h>
-#include <libpldm/oem/ibm/libpldm/host.h>
+#include <libpldm/oem/ibm/host.h>
 
 #include <endian.h>
 #include <stdint.h>
diff --git a/src/oem/ibm/platform.c b/src/oem/ibm/platform.c
index 042044f..2c3741d 100644
--- a/src/oem/ibm/platform.c
+++ b/src/oem/ibm/platform.c
@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later */
 #include <libpldm/platform.h>
-#include <libpldm/oem/ibm/libpldm/platform_oem_ibm.h>
+#include <libpldm/oem/ibm/platform.h>
 
 #include <string.h>
 
diff --git a/tests/oem/ibm/libpldm_fileio_test.cpp b/tests/oem/ibm/libpldm_fileio_test.cpp
index 3f9625e..1c92e58 100644
--- a/tests/oem/ibm/libpldm_fileio_test.cpp
+++ b/tests/oem/ibm/libpldm_fileio_test.cpp
@@ -1,6 +1,6 @@
 #include <endian.h>
 #include <libpldm/base.h>
-#include <libpldm/oem/ibm/libpldm/file_io.h>
+#include <libpldm/oem/ibm/file_io.h>
 
 #include <array>
 #include <cstdint>
diff --git a/tests/oem/ibm/libpldm_host_test.cpp b/tests/oem/ibm/libpldm_host_test.cpp
index 11f92d3..973f1c3 100644
--- a/tests/oem/ibm/libpldm_host_test.cpp
+++ b/tests/oem/ibm/libpldm_host_test.cpp
@@ -1,6 +1,6 @@
 #include <endian.h>
 #include <libpldm/base.h>
-#include <libpldm/oem/ibm/libpldm/host.h>
+#include <libpldm/oem/ibm/host.h>
 
 #include <array>
 #include <cstdint>
