diff --git a/setup.py b/setup.py
index d690018c914cf18caed3acd2a44d01f31e5c80cf..80fa724d656288d9ccc448266619e4172db35e8e 100644
--- a/setup.py
+++ b/setup.py
@@ -22,6 +22,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 THE SOFTWARE.
 """
 
+from codecs import open
+
 
 def get_config_schema():
     from aksetup_helper import (ConfigSchema,
@@ -143,7 +145,7 @@ def main():
             if "isl_ast_int.c" in fn and conf["USE_SHIPPED_IMATH"]:
                 continue
 
-            inf = open(fn, "rt")
+            inf = open(fn, "rt", codec="utf-8")
             try:
                 contents = inf.read()
             finally: