diff --git a/setup.py b/setup.py
index bda2322fa6f5d7e5ee86b9baef10b306bd011566..35520fd344c505bf38a60fcd5484c28517b0d2bd 100644
--- a/setup.py
+++ b/setup.py
@@ -56,13 +56,22 @@ class AidgePkgBuild(build_ext):
             if "AIDGE_INSTALL" not in os.environ
             else os.environ["AIDGE_INSTALL"]
         )
+
+        # using ninja as default build system to build faster and with the same compiler as on windows
+        build_gen = (
+            ["-G", os.environ["AIDGE_BUILD_GEN"]]
+            if "AIDGE_BUILD_GEN" in os.environ
+            else []
+        )
+        
         self.spawn(
             [
                 "cmake",
+                *build_gen,
                 str(cwd),
+                "-DTEST=OFF",
                 f"-DCMAKE_INSTALL_PREFIX:PATH={install_path}",
                 f"-DCMAKE_BUILD_TYPE={compile_type}",
-                "-DTEST=OFF",
                 "-DPYBIND=ON",
                 "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON",
                 "-DCOVERAGE=OFF",