diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..e89f189
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,52 @@
+#Author: Akshaya Maran <akshaya.maran@timesys.com>
+#Date:   Wed Apr 23 18:34:54 2025 +0530s
+
+# Add makefile
+
+# This is heavily based off of the Yocto recipe from Xilinx
+
+# Makefile for libmali-xlnx
+
+# Timesys Corporation 2025
+
+LIBDIR=$(DESTDIR)/usr/lib
+INCLUDEDIR=$(DESTDIR)/usr/include
+SRC_DIR=$(SRC_DIR)
+
+install:
+	@mkdir -p $(LIBDIR)/pkgconfig
+	@mkdir -p $(INCLUDEDIR)/
+	@mkdir -p $(INCLUDEDIR)/EGL
+	@mkdir -p $(INCLUDEDIR)/GLES
+	@mkdir -p $(INCLUDEDIR)/GLES2
+	@mkdir -p $(INCLUDEDIR)/KHR
+	@mkdir -p $(LIBDIR)/fbdev
+	@mkdir -p $(LIBDIR)/headless
+	@mkdir -p $(LIBDIR)/wayland
+	@mkdir -p $(LIBDIR)/x11	
+
+# Install header files
+	
+	install -m 0644 glesHeaders/EGL/*.h $(INCLUDEDIR)/EGL/
+	install -m 0644 glesHeaders/GLES/*.h $(INCLUDEDIR)/GLES/
+	install -m 0644 glesHeaders/GLES2/*.h $(INCLUDEDIR)/GLES2/
+	install -m 0644 glesHeaders/KHR/*.h $(INCLUDEDIR)/KHR/
+ifeq (y,$(USE_WAYLAND))
+	install -m 0644 glesHeaders/GBM/gbm.h $(INCLUDEDIR)/
+endif
+
+# Install libraries
+
+	cp -a --no-preserve=ownership aarch64-linux-gnu/common/* $(LIBDIR)/
+	install -m 0644 aarch64-linux-gnu/fbdev/libMali.so.9.0 $(LIBDIR)/fbdev
+	install -m 0644 aarch64-linux-gnu/headless/libMali.so.9.0 $(LIBDIR)/headless
+	install -m 0644 aarch64-linux-gnu/wayland/libMali.so.9.0 $(LIBDIR)/wayland
+	install -m 0644 aarch64-linux-gnu/x11/libMali.so.9.0 $(LIBDIR)/x11
+
+# Install pkgconfig
+
+	install -m 0644 egl.pc $(LIBDIR)/pkgconfig/
+	install -m 0644 glesv*.pc $(LIBDIR)/pkgconfig/
+ifeq (y,$(USE_WAYLAND))
+	install -m 0644 gbm.pc $(LIBDIR)/pkgconfig/
+endif
diff --git a/egl.pc b/egl.pc
new file mode 100644
index 0000000..65c4c1f
--- /dev/null
+++ b/egl.pc
@@ -0,0 +1,12 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib
+includedir=/usr/include
+
+Name: egl
+Description: MALI EGL library
+Requires.private:
+Version: 17.3
+Libs: -L${libdir} -lEGL
+Libs.private: -lm -lpthread -ldl
+Cflags: -I${includedir}
diff --git a/gbm.pc b/gbm.pc
new file mode 100644
index 0000000..c40b5f4
--- /dev/null
+++ b/gbm.pc
@@ -0,0 +1,12 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib
+includedir=/usr/include
+
+Name: gbm
+Description: MALI gbm library
+Requires.private:
+Version: 17.3
+Libs: -L${libdir} -lgbm
+Libs.private: -lm -lpthread -ldl
+Cflags: -I${includedir}
diff --git a/glesv1.pc b/glesv1.pc
new file mode 100644
index 0000000..39467f3
--- /dev/null
+++ b/glesv1.pc
@@ -0,0 +1,12 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib
+includedir=/usr/include
+
+Name: glesv1
+Description: MALI OpenGL ES 1.1 library
+Requires.private:
+Version: 17.3
+Libs: -L${libdir} -lGLESv1_CM
+Libs.private: -lm -lpthread -ldl
+Cflags: -I${includedir}
diff --git a/glesv1_cm.pc b/glesv1_cm.pc
new file mode 100644
index 0000000..1547b4c
--- /dev/null
+++ b/glesv1_cm.pc
@@ -0,0 +1,12 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib
+includedir=/usr/include
+
+Name: gles_cm
+Description: Mali OpenGL ES 1.1 CM library
+Requires.private:
+Version: 17.3
+Libs: -L${libdir} -lGLESv1_CM
+Libs.private: -lm -lpthread -ldl
+Cflags: -I${includedir}
diff --git a/glesv2.pc b/glesv2.pc
new file mode 100644
index 0000000..a0a84f2
--- /dev/null
+++ b/glesv2.pc
@@ -0,0 +1,12 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib
+includedir=/usr/include
+
+Name: glesv2
+Description: MALI OpenGL ES 2.0 library
+Requires.private:
+Version: 17.3
+Libs: -L${libdir} -lGLESv2
+Libs.private: -lm -lpthread -ldl
+Cflags: -I${includedir}
