Merge pull request #26 from prestomation/master

Modularize emscripten build.
diff --git a/basisu_gpu_texture.cpp b/basisu_gpu_texture.cpp
index 3115355..dab13fa 100644
--- a/basisu_gpu_texture.cpp
+++ b/basisu_gpu_texture.cpp
@@ -681,8 +681,11 @@
 		{
 			uint32_t img_size = gpu_images[0][level_index].get_size_in_bytes();
 			
-			img_size = img_size * header.m_numberOfFaces * maximum<uint32_t>(1, header.m_numberOfArrayElements);
-			
+			if ((header.m_numberOfFaces == 1) || (header.m_numberOfArrayElements > 1))
+			{
+				img_size = img_size * header.m_numberOfFaces * maximum<uint32_t>(1, header.m_numberOfArrayElements);
+			}
+
 			assert(img_size && ((img_size & 3) == 0));
 
 			packed_uint<4> packed_img_size(img_size);
@@ -703,8 +706,6 @@
 			
 			} // array_index
 
-			assert(bytes_written == img_size);
-			
 		} // level_index
 
 		return true;
diff --git a/transcoder/basisu.h b/transcoder/basisu.h
index 8ab1143..17d326a 100644
--- a/transcoder/basisu.h
+++ b/transcoder/basisu.h
@@ -69,7 +69,7 @@
 
 #define BASISU_NOTE_UNUSED(x) (void)(x)
 #define BASISU_ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0]))
-#define BASISU_NO_EQUALS_OR_COPY_CONSTRUCT(x) x(x &); x& operator= (const x&);
+#define BASISU_NO_EQUALS_OR_COPY_CONSTRUCT(x) x(const x &) = delete; x& operator= (const x &) = delete;
 #define BASISU_ASSUME(x) static_assert(x, #x);
 #define BASISU_OFFSETOF(s, m) (uint32_t)(intptr_t)(&((s *)(0))->m)
 #define BASISU_STRINGIZE(x) #x