diff --git a/SConscript b/SConscript
index 1d6077fb31b7d49f48fdb1e2e14acc2a73a72cf3..c14a6de7438ce610f8e21c130ddaf55cce15b304 100644
--- a/SConscript
+++ b/SConscript
@@ -11,7 +11,7 @@ else:
 
 # generate code
 
-os.system('cd ' + os.path.join('..', 'docsys') + ' && python nifxml_niflib.py -p ' + os.path.join('..' , 'niflib'))
+os.system('cd ' + os.path.join('..', '..', 'docsys') + ' && python nifxml_niflib.py -p ' + os.path.join('..' , 'niflib'))
 
 # list source files
 
diff --git a/include/nif_basic_types.h b/include/nif_basic_types.h
index ef1b7191f943a7bf22b65eba75f39d36ef25b7c8..e82bb2afe69e8555030cced3f366e36f612885dd 100644
--- a/include/nif_basic_types.h
+++ b/include/nif_basic_types.h
@@ -30,8 +30,8 @@ typedef unsigned char	byte;
 
 /*! Specifies the low-level nature of the storage process */
 enum EndianType {
-	BIG_ENDIAN = 0, /*!< Big Endian storage, such as that used by PowerPC processors */
-	LITTLE_ENDIAN = 1 /*!< Little Endian storage, such as that used by x86 processors */
+	NIF_BIG_ENDIAN = 0, /*!< Big Endian storage, such as that used by PowerPC processors */
+	NIF_LITTLE_ENDIAN = 1 /*!< Little Endian storage, such as that used by x86 processors */
 };
 
 //--Structures--//
@@ -41,12 +41,12 @@ enum EndianType {
  * the way an existing file was stored. 
  */
 struct NifInfo {
-	NifInfo() : version(VER_4_0_0_2), userVersion(0), userVersion2(0), endian(LITTLE_ENDIAN) {}
+	NifInfo() : version(VER_4_0_0_2), userVersion(0), userVersion2(0), endian(NIF_LITTLE_ENDIAN) {}
 	NifInfo( unsigned version, unsigned userVersion = 0, unsigned userVersion2 = 0) {
 		this->version = version;
 		this->userVersion = userVersion;
 		this->userVersion2 = userVersion2;
-		endian = LITTLE_ENDIAN;
+		endian = NIF_LITTLE_ENDIAN;
 	}
 	unsigned version;
 	unsigned userVersion;
diff --git a/src/NIF_IO.cpp b/src/NIF_IO.cpp
index ef9b53dda6f25bbcc548bd450dfe2d59abdf5f2b..04e41708eb1ba4c97c4a6bbc5c77c92baea1eee6 100644
--- a/src/NIF_IO.cpp
+++ b/src/NIF_IO.cpp
@@ -24,9 +24,9 @@ EndianType DetectEndianType() {
 	short r = *(short *)test;
 
 	if ( r == 1 ) {
-		return LITTLE_ENDIAN;
+		return NIF_LITTLE_ENDIAN;
 	} else {
-		return BIG_ENDIAN;
+		return NIF_BIG_ENDIAN;
 	}		
 }
 
diff --git a/src/gen/Header.cpp b/src/gen/Header.cpp
index 3ca3f592d061bc2d420d152f744569f1154a6ab9..7c2df9f7b6e9c8f6c274a7bb325bc29ef091a59b 100644
--- a/src/gen/Header.cpp
+++ b/src/gen/Header.cpp
@@ -92,11 +92,6 @@ NifInfo Header::Read( istream& in ) {
 
 	//Fill out and return NifInfo structure.
 	info.userVersion = userVersion;
-	if ( endianType == 0) {
-		info.endian = BIG_ENDIAN;
-	} else {
-		info.endian = LITTLE_ENDIAN;
-	}
 	info.endian = EndianType(endianType);
 	info.creator = creator.str;
 	info.exportInfo1 = exportInfo1.str;
diff --git a/src/niflib.cpp b/src/niflib.cpp
index d0784023daaa76a78ab18234be3b168f54b00957..adb943116c773316432171fcd5998366fdf143b8 100644
--- a/src/niflib.cpp
+++ b/src/niflib.cpp
@@ -162,11 +162,7 @@ vector<NiObjectRef> ReadNifList( istream & in, NifInfo * info ) {
 	info->version = header.version;
 	info->userVersion = header.userVersion;
 	info->userVersion2 = header.userVersion2;
-	if ( header.endianType == 0) {
-		info->endian = BIG_ENDIAN;
-	} else {
-		info->endian = LITTLE_ENDIAN;
-	}
+	info->endian = EndianType(header.endianType);
 	info->creator = header.creator.str;
 	info->exportInfo1 = header.exportInfo1.str;
 	info->exportInfo2 = header.exportInfo2.str;