Răsfoiți Sursa

Crown for win compiled, tests does not compile yet

mikymod 12 ani în urmă
părinte
comite
03d6c947b4

+ 16 - 12
src/CMakeLists.txt

@@ -203,11 +203,11 @@ set (INPUT_HEADERS
 )
 
 set (NETWORK_SRC
-	network/BitMessage.cpp
+#	network/BitMessage.cpp
 )
 
 set (NETWORK_HEADERS
-	network/BitMessage.h
+#	network/BitMessage.h
 )
 
 set (RENDERERS_SRC
@@ -323,8 +323,8 @@ if (WINDOWS)
 		os/win/OsWindow.cpp
 		os/win/OsFile.cpp
 		os/win/Thread.cpp
-		os/win/Mutex.h
-		os/win/Cond.h
+		os/win/Mutex.cpp
+		os/win/Cond.cpp
 	)
 
 	list (APPEND RENDERERS_SRC
@@ -339,15 +339,19 @@ if (WINDOWS)
 		renderers/gl/wgl/GLContext.h
 	)
 
-	list (APPEND CROWN_THIRD_LIBRARIES
-		${CROWN_THIRD}/zlib/lib/zlib
-		OpenGL
-		GLEW
+	list (APPEND CROWN_LIBRARIES
+		zlib
+		OpenGL32
+		glew32
 	)
 
 	list (APPEND CROWN_THIRD_INCLUDES
 		${CROWN_THIRD}/zlib/include
 	)
+
+	list (APPEND CROWN_THIRD_LIBS
+		${CROWN_THIRD}/zlib/lib
+	)
 	
 	set (CROWN_EXECUTABLE_NAME crown-win)
 	set (CROWN_MAIN_SRC os/win/main.cpp)
@@ -368,7 +372,7 @@ set (CROWN_SOURCES
 
 	${RENDERERS_SRC}
 
-	${NETWORK_SRC}
+#	${NETWORK_SRC}
 
 	${OS_SRC}
 )
@@ -389,7 +393,7 @@ set (CROWN_HEADERS
 
 	${RENDERERS_HEADERS}
 
-	${NETWORK_HEADERS}
+#	${NETWORK_HEADERS}
 
 	${OS_HEADERS}
 
@@ -398,9 +402,9 @@ set (CROWN_HEADERS
 configure_file (${CMAKE_CURRENT_SOURCE_DIR}/Config.h.in ${CMAKE_CURRENT_SOURCE_DIR}/Config.h)
 
 include_directories(${CROWN_INCLUDES} ${CROWN_THIRD_INCLUDES})
-
 link_directories(${CROWN_THIRD_LIBS})
-link_libraries(${CROWN_LIBRARIES} ${WIN_LIB})
+
+link_libraries(${CROWN_LIBRARIES})
 
 add_definitions(${CROWN_COMPILER_FLAGS})
 

+ 2 - 0
src/core/settings/FloatSetting.h

@@ -25,6 +25,8 @@ OTHER DEALINGS IN THE SOFTWARE.
 */
 
 #pragma once
+#undef min
+#undef max
 
 #include "Types.h"
 

+ 2 - 0
src/core/settings/IntSetting.h

@@ -25,6 +25,8 @@ OTHER DEALINGS IN THE SOFTWARE.
 */
 
 #pragma once
+#undef min
+#undef max
 
 #include "Types.h"
 

+ 1 - 0
src/input/Mouse.h

@@ -25,6 +25,7 @@ OTHER DEALINGS IN THE SOFTWARE.
 */
 
 #pragma once
+#undef MB_RIGHT
 
 #include "Types.h"
 #include "Vec2.h"

+ 1 - 0
src/network/BitMessage.h

@@ -29,6 +29,7 @@ OTHER DEALINGS IN THE SOFTWARE.
 #include "Types.h"
 #include "Allocator.h"
 #include "Vec3.h"
+#include "NetAddress.h"
 
 namespace crown
 {

+ 3 - 4
src/os/win/Cond.cpp

@@ -24,8 +24,6 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 */
 
-#pragma once
-
 #include "Cond.h"
 
 namespace crown
@@ -45,12 +43,13 @@ Cond::~Cond()
 
 void Cond::signal()
 {
-	WakeConditionVariable(&h);
+	WakeConditionVariable(&m_cond);
 }
 
 void Cond::wait(Mutex& mutex)
 {
-	SleepConditionVariableSRW(&m_cond, mutex.handle(), INFINITE, 0);
+	CRITICAL_SECTION cs = mutex.handle();
+	SleepConditionVariableCS(&m_cond, &cs, INFINITE);
 }
 
 } // namespace os

+ 10 - 13
src/os/win/Mutex.cpp

@@ -24,8 +24,6 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 */
 
-#pragma once
-
 #include "Mutex.h"
 #include "Assert.h"
 
@@ -37,34 +35,33 @@ namespace os
 //-----------------------------------------------------------------------------
 Mutex::Mutex()
 {
-	m_mutex = CreateMutex(NULL, false, NULL);
+	bool init = InitializeCriticalSectionAndSpinCount(&m_cs, 0x00000400);
 
-	CE_ASSERT(m_mutex != NULL, "Unable to create mutex");
+	CE_ASSERT(init, "Unable to create mutex");
 }
 
 //-----------------------------------------------------------------------------
 Mutex::~Mutex()
 {
-	// TEST
-	unlock();
-
-	CloseHandle(m_mutex);
+	DeleteCriticalSection(&m_cs);
 }
 
 //-----------------------------------------------------------------------------
 void Mutex::lock()
 {
-	m_mutex = OpenMutex(NULL, false, NULL);
-
-	CE_ASSERT(m_mutex != NULL, "Unable to lock mutex");
+    EnterCriticalSection(&m_cs); 
 }
 
 //-----------------------------------------------------------------------------
 void Mutex::unlock()
 {
-	bool released = ReleaseMutex(m_mutex);
+    LeaveCriticalSection(&m_cs);
+}
 
-	CE_ASSERT(released, "Unable to unlock mutex");
+//-----------------------------------------------------------------------------
+CRITICAL_SECTION Mutex::handle()
+{
+	return m_cs;
 }
 
 } // namespace os

+ 3 - 1
src/os/win/Mutex.h

@@ -45,9 +45,11 @@ public:
 	void				lock();
 	void				unlock();
 
+	CRITICAL_SECTION	handle();
+
 private:
 
-	HANDLE				m_mutex;
+	CRITICAL_SECTION	m_cs;
 
 	friend class		Cond;
 };

+ 0 - 2
src/os/win/OsFile.cpp

@@ -24,8 +24,6 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 */
 
-#pragma once
-
 #include "OsFile.h"
 #include "Assert.h"
 

+ 0 - 2
src/os/win/Thread.cpp

@@ -24,8 +24,6 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 OTHER DEALINGS IN THE SOFTWARE.
 */
 
-#pragma once
-
 #include "Thread.h"
 #include "Assert.h"
 #include "StringUtils.h"