diff --git a/CMakeLists.txt b/CMakeLists.txt
index bb30b46..2c4de2f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -142,7 +142,7 @@ endif()
 # Install directories
 # For miscellaneous files
 if(SFML_OS_WINDOWS OR SFML_OS_IOS)
-    set(DEFAULT_INSTALL_MISC_DIR .)
+    set(DEFAULT_INSTALL_MISC_DIR share/SFML)
 elseif(SFML_OS_LINUX OR SFML_OS_FREEBSD OR SFML_OS_OPENBSD)
     set(DEFAULT_INSTALL_MISC_DIR share/SFML)
 elseif(SFML_OS_MACOSX)
@@ -269,7 +269,7 @@ if(SFML_OS_MACOSX)
 # on Linux and BSD-like OS, install pkg-config files by default
 set(SFML_INSTALL_PKGCONFIG_DEFAULT FALSE)
 
-if(SFML_OS_LINUX OR SFML_OS_FREEBSD OR SFML_OS_OPENBSD)
+if(SFML_OS_LINUX OR SFML_OS_FREEBSD OR SFML_OS_OPENBSD OR MINGW)
     set(SFML_INSTALL_PKGCONFIG_DEFAULT TRUE)
 endif()
 
@@ -425,7 +425,7 @@ install(FILES license.md DESTINATION ${SFML_MISC_INSTALL_PREFIX})
 install(FILES readme.md DESTINATION ${SFML_MISC_INSTALL_PREFIX})
 
 # install 3rd-party libraries and tools
-if(SFML_OS_WINDOWS)
+if(SFML_OS_WINDOWS AND NOT MINGW)
 
     if(NOT SFML_USE_SYSTEM_DEPS)
         # install the binaries of SFML dependencies
diff --git a/cmake/Macros.cmake b/cmake/Macros.cmake
index be52345..ecc8f98 100644
--- a/cmake/Macros.cmake
+++ b/cmake/Macros.cmake
@@ -59,12 +59,6 @@ macro(sfml_add_library target)
         else()
             set_target_properties(${target} PROPERTIES DEBUG_POSTFIX -d)
         endif()
-        if (SFML_OS_WINDOWS AND SFML_COMPILER_GCC)
-            # on Windows/gcc get rid of "lib" prefix for shared libraries,
-            # and transform the ".dll.a" suffix into ".a" for import libraries
-            set_target_properties(${target} PROPERTIES PREFIX "")
-            set_target_properties(${target} PROPERTIES IMPORT_SUFFIX ".a")
-        endif()
     else()
         set_target_properties(${target} PROPERTIES DEBUG_POSTFIX -s-d)
         set_target_properties(${target} PROPERTIES RELEASE_POSTFIX -s)
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
index 123b44c..02755b5 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -17,7 +17,7 @@ find_package(Doxygen REQUIRED)
 
 # set the input and output documentation paths
 set(DOXYGEN_INPUT_DIR ${PROJECT_SOURCE_DIR})
-set(DOXYGEN_OUTPUT_DIR ${PROJECT_BINARY_DIR}/doc)
+set(DOXYGEN_OUTPUT_DIR ${PROJECT_BINARY_DIR}/share/doc/SFML)
 
 # see if we can generate the CHM documentation
 if(SFML_OS_WINDOWS)
diff --git a/src/SFML/Audio/CMakeLists.txt b/src/SFML/Audio/CMakeLists.txt
index 420e13b..c4ea0b3 100644
--- a/src/SFML/Audio/CMakeLists.txt
+++ b/src/SFML/Audio/CMakeLists.txt
@@ -56,7 +56,7 @@ set(CODECS_SRC
 source_group("codecs" FILES ${CODECS_SRC})
 
 # let CMake know about our additional audio libraries paths (on Windows and OSX)
-if(SFML_OS_WINDOWS)
+if(SFML_OS_WINDOWS AND NOT MINGW)
     set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "${PROJECT_SOURCE_DIR}/extlibs/headers/AL")
 elseif(SFML_OS_MACOSX)
     set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "${PROJECT_SOURCE_DIR}/extlibs/libs-osx/Frameworks")
diff --git a/src/SFML/CMakeLists.txt b/src/SFML/CMakeLists.txt
index 25a5bb1..967f593 100644
--- a/src/SFML/CMakeLists.txt
+++ b/src/SFML/CMakeLists.txt
@@ -3,7 +3,7 @@
 include(${PROJECT_SOURCE_DIR}/cmake/Macros.cmake)
 
 # let CMake know about our additional libraries paths
-if (SFML_OS_WINDOWS)
+if (SFML_OS_WINDOWS AND NOT MINGW)
     set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "${PROJECT_SOURCE_DIR}/extlibs/headers")
     if(SFML_COMPILER_GCC)
         if(ARCH_32BITS)
diff --git a/src/SFML/Graphics/CMakeLists.txt b/src/SFML/Graphics/CMakeLists.txt
index 883c758..3b53b43 100644
--- a/src/SFML/Graphics/CMakeLists.txt
+++ b/src/SFML/Graphics/CMakeLists.txt
@@ -100,7 +100,7 @@ target_link_libraries(sfml-graphics PUBLIC sfml-window)
 target_include_directories(sfml-graphics PRIVATE "${PROJECT_SOURCE_DIR}/extlibs/headers/stb_image")
 
 # let CMake know about our additional graphics libraries paths
-if(SFML_OS_WINDOWS)
+if(SFML_OS_WINDOWS AND NOT MINGW)
     set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "${PROJECT_SOURCE_DIR}/extlibs/headers/freetype2")
 elseif(SFML_OS_MACOSX)
     set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "${PROJECT_SOURCE_DIR}/extlibs/headers/freetype2")
