diff --git a/scriptc/rs_allocation.rsh b/scriptc/rs_allocation.rsh
index 1e755cd..154a099 100644
--- a/scriptc/rs_allocation.rsh
+++ b/scriptc/rs_allocation.rsh
@@ -71,6 +71,8 @@
 extern uint32_t __attribute__((overloadable))
     rsAllocationGetDimFaces(rs_allocation);
 
+#if (defined(RS_VERSION) && (RS_VERSION >= 14))
+
 /**
  * Copy part of an allocation from another allocation.
  *
@@ -123,6 +125,7 @@
                             uint32_t srcMip,
                             rs_allocation_cubemap_face srcFace);
 
+#endif //defined(RS_VERSION) && (RS_VERSION >= 14)
 
 /**
  * Extract a single element from an allocation.
diff --git a/scriptc/rs_atomic.rsh b/scriptc/rs_atomic.rsh
index 95513ad..87c6c02 100644
--- a/scriptc/rs_atomic.rsh
+++ b/scriptc/rs_atomic.rsh
@@ -23,6 +23,7 @@
 #ifndef __RS_ATOMIC_RSH__
 #define __RS_ATOMIC_RSH__
 
+#if (defined(RS_VERSION) && (RS_VERSION >= 14))
 
 /**
  * Atomic add one to the value at addr.
@@ -243,6 +244,7 @@
 extern uint32_t __attribute__((overloadable))
     rsAtomicCas(volatile uint32_t* addr, int32_t compareValue, int32_t newValue);
 
+#endif //defined(RS_VERSION) && (RS_VERSION >= 14)
 
 #endif
 
diff --git a/scriptc/rs_graphics.rsh b/scriptc/rs_graphics.rsh
index 00fd1b1..3e9339e 100644
--- a/scriptc/rs_graphics.rsh
+++ b/scriptc/rs_graphics.rsh
@@ -23,6 +23,7 @@
 #ifndef __RS_GRAPHICS_RSH__
 #define __RS_GRAPHICS_RSH__
 
+#if (defined(RS_VERSION) && (RS_VERSION >= 14))
 /**
  * Set the color target used for all subsequent rendering calls
  * @param colorTarget
@@ -64,6 +65,8 @@
 extern uint __attribute__((overloadable))
     rsgFinish(void);
 
+#endif //defined(RS_VERSION) && (RS_VERSION >= 14)
+
 /**
  * Bind a new ProgramFragment to the rendering context.
  *
@@ -187,6 +190,8 @@
 extern void __attribute__((overloadable))
     rsgAllocationSyncAll(rs_allocation alloc);
 
+#if (defined(RS_VERSION) && (RS_VERSION >= 14))
+
 /**
  * Sync the contents of an allocation from memory space
  * specified by source.
@@ -198,6 +203,8 @@
     rsgAllocationSyncAll(rs_allocation alloc,
                          rs_allocation_usage_type source);
 
+#endif //defined(RS_VERSION) && (RS_VERSION >= 14)
+
 /**
  * Low performance utility function for drawing a simple rectangle.  Not
  * intended for drawing large quantities of geometry.
diff --git a/scriptc/rs_matrix.rsh b/scriptc/rs_matrix.rsh
index ab3cd3b..ebff7f4 100644
--- a/scriptc/rs_matrix.rsh
+++ b/scriptc/rs_matrix.rsh
@@ -308,7 +308,7 @@
 #else
 /**
  * Multiply a vector by a matrix and return the result vector.
- * API version 10-13
+ * API version 14+
  */
 _RS_RUNTIME float4 __attribute__((overloadable))
 rsMatrixMultiply(const rs_matrix4x4 *m, float4 in);
diff --git a/scriptc/rs_types.rsh b/scriptc/rs_types.rsh
index 5d5df60..e9c3c5e 100644
--- a/scriptc/rs_types.rsh
+++ b/scriptc/rs_types.rsh
@@ -366,6 +366,7 @@
 #define RS_PACKED __attribute__((packed, aligned(4)))
 #define NULL ((const void *)0)
 
+#if (defined(RS_VERSION) && (RS_VERSION >= 14))
 
 /**
  * \brief Enum for selecting cube map faces
@@ -393,4 +394,6 @@
     RS_ALLOCATION_USAGE_GRAPHICS_RENDER_TARGET = 0x0010
 } rs_allocation_usage_type;
 
+#endif //defined(RS_VERSION) && (RS_VERSION >= 14)
+
 #endif
