diff --git a/Make/files b/Make/files
new file mode 100644
index 0000000000000000000000000000000000000000..cb0a247aa9944e3aec4a7a285e470dc8ca0a448e
--- /dev/null
+++ b/Make/files
@@ -0,0 +1,3 @@
+FOAM2CSR.cu
+
+LIB = $(FOAM_MODULE_LIBBIN)/libfoam2csr
diff --git a/Make/nvcc b/Make/nvcc
new file mode 100644
index 0000000000000000000000000000000000000000..2140fdc80e31c31d1d2be8d9f37b5059a87fc37e
--- /dev/null
+++ b/Make/nvcc
@@ -0,0 +1,14 @@
+SUFFIXES += .cu
+
+NVARCH = 70
+
+NVCC        = nvcc -std=c++14 --compiler-options='-fPIC' -arch=sm_$(NVARCH)
+
+cuFLAGS     = -O3
+
+cutoo       = $(WM_SCHEDULER) $(NVCC) $(cuFLAGS) -I$(*D) $(LIB_HEADER_DIRS) -c $*.cu -o $@
+
+$(OBJECTS_DIR)/%.o : %.cu
+	$(cutoo)
+
+LINKLIBSO   = $(NVCC) -shared
diff --git a/Make/options b/Make/options
new file mode 100644
index 0000000000000000000000000000000000000000..fdf5ba69851955797227bd9e4fc1b93f93077e03
--- /dev/null
+++ b/Make/options
@@ -0,0 +1,13 @@
+include $(OBJECTS_DIR)/../nvcc
+
+sinclude $(GENERAL_RULES)/module-path-user
+
+/* Failsafe - default to user location */
+ifeq (,$(strip $(FOAM_MODULE_LIBBIN)))
+    FOAM_MODULE_LIBBIN = $(FOAM_USER_LIBBIN)
+endif
+
+EXE_INC = \
+    -I. \
+    -I$(CUBROOT)
+