diff --git a/setup.py b/setup.py
index b055ad47bda2a82deea82fd3a45d6e75941a50f9..43c2ebd8a7b79203133b5b0d1759ab39d142e7f9 100644
--- a/setup.py
+++ b/setup.py
@@ -51,9 +51,15 @@ class CMakeBuild(build_ext):
             if "AIDGE_INSTALL" not in os.environ
             else os.environ["AIDGE_INSTALL"]
         )
+        cmake_type_opts = (
+            ["-G", os.environ.get("AIDGE_BUILD_GEN")]
+            if "AIDGE_BUILD_GEN" in os.environ
+            else []
+        )
         self.spawn(
             [
                 "cmake",
+                *cmake_type_opts,
                 str(cwd),
                 "-DTEST=OFF",
                 f"-DCMAKE_INSTALL_PREFIX:PATH={install_path}",