 +  aes/aes_locl.h
 +  aes/aes_core.c # aes_asm_src DEFAULT (Configurations/00-base-templates.conf)
 +  aes/aes_cbc.c # aes_asm_src DEFAULT (Configurations/00-base-templates.conf)
++  aes/aes_x86core.c
 +  )
 +source_group(aes FILES ${aes_srcs})
 +list(APPEND ${lib_name}_libsrcs ${aes_srcs})
 +##########
-+set(aes_extra
-+  aes/aes_x86core.c # TODO libsrcs?
-+  )
-+list(APPEND aes_extra # TODO asm
++set(aes_extra # TODO asm
 +  aes/asm/aes-armv4.pl
 +  aes/asm/aes-c64xplus.pl
 +  aes/asm/aesfx-sparcv9.pl

diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..e9ebd73
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,110 @@
+cmake_minimum_required(VERSION 3.12)
+project(openssl)
+include(flags OPTIONAL)

+    )
+  if(WIN32)
+    list(APPEND OPENSSL_DEFS
+      -DRMD160_ASM
+      -DAES_ASM
+      -DWHIRLPOOL_ASM
