diff --git a/src/blockchain_db/blockchain_db.h b/src/blockchain_db/blockchain_db.h
index 39208250d..674b844c1 100644
--- a/src/blockchain_db/blockchain_db.h
+++ b/src/blockchain_db/blockchain_db.h
@@ -37,7 +37,7 @@
 #include "cryptonote_protocol/blobdatatype.h"
 #include "cryptonote_basic/cryptonote_basic.h"
 #include "cryptonote_basic/difficulty.h"
-#include "cryptonote_basic/hardfork.h"
+#include "cryptonote_core/hardfork.h"
 
 /** \file
  * Cryptonote Blockchain Database Interface
diff --git a/src/cryptonote_basic/CMakeLists.txt b/src/cryptonote_basic/CMakeLists.txt
index 9df157a9e..db478c690 100644
--- a/src/cryptonote_basic/CMakeLists.txt
+++ b/src/cryptonote_basic/CMakeLists.txt
@@ -32,8 +32,7 @@ set(cryptonote_basic_sources
   cryptonote_basic_impl.cpp
   cryptonote_format_utils.cpp
   difficulty.cpp
-  miner.cpp
-  hardfork.cpp)
+  miner.cpp)
 
 set(cryptonote_basic_headers)
 
@@ -50,8 +49,7 @@ set(cryptonote_basic_private_headers
   difficulty.h
   miner.h
   tx_extra.h
-  verification_context.h
-  hardfork.h)
+  verification_context.h)
 
 monero_private_headers(cryptonote_basic
   ${crypto_private_headers})
diff --git a/src/cryptonote_core/CMakeLists.txt b/src/cryptonote_core/CMakeLists.txt
index 5944ddcd1..8a72dd259 100644
--- a/src/cryptonote_core/CMakeLists.txt
+++ b/src/cryptonote_core/CMakeLists.txt
@@ -30,6 +30,7 @@ set(cryptonote_core_sources
   blockchain.cpp
   cryptonote_core.cpp
   tx_pool.cpp
+  hardfork.cpp
   cryptonote_tx_utils.cpp)
 
 set(cryptonote_core_headers)
@@ -37,6 +38,7 @@ set(cryptonote_core_headers)
 set(cryptonote_core_private_headers
   blockchain_storage_boost_serialization.h
   blockchain.h
+  hardfork.h
   cryptonote_core.h
   tx_pool.h
   cryptonote_tx_utils.h)
diff --git a/src/cryptonote_core/blockchain.h b/src/cryptonote_core/blockchain.h
index 2c7420e18..6e4ba5e2a 100644
--- a/src/cryptonote_core/blockchain.h
+++ b/src/cryptonote_core/blockchain.h
@@ -51,7 +51,7 @@
 #include "cryptonote_basic/verification_context.h"
 #include "crypto/hash.h"
 #include "cryptonote_basic/checkpoints.h"
-#include "cryptonote_basic/hardfork.h"
+#include "cryptonote_core/hardfork.h"
 #include "blockchain_db/blockchain_db.h"
 
 namespace cryptonote
diff --git a/src/cryptonote_basic/hardfork.cpp b/src/cryptonote_core/hardfork.cpp
similarity index 99%
rename from src/cryptonote_basic/hardfork.cpp
rename to src/cryptonote_core/hardfork.cpp
index 24d6655f0..50da70050 100644
--- a/src/cryptonote_basic/hardfork.cpp
+++ b/src/cryptonote_core/hardfork.cpp
@@ -29,7 +29,7 @@
 #include <algorithm>
 #include <cstdio>
 
-#include "cryptonote_basic.h"
+#include "cryptonote_basic/cryptonote_basic.h"
 #include "blockchain_db/blockchain_db.h"
 #include "hardfork.h"
 
diff --git a/src/cryptonote_basic/hardfork.h b/src/cryptonote_core/hardfork.h
similarity index 99%
rename from src/cryptonote_basic/hardfork.h
rename to src/cryptonote_core/hardfork.h
index 11241e657..6c6fbcb84 100644
--- a/src/cryptonote_basic/hardfork.h
+++ b/src/cryptonote_core/hardfork.h
@@ -29,7 +29,7 @@
 #pragma once
 
 #include "syncobj.h"
-#include "cryptonote_basic.h"
+#include "cryptonote_basic/cryptonote_basic.h"
 
 namespace cryptonote
 {
diff --git a/src/daemon/rpc_command_executor.cpp b/src/daemon/rpc_command_executor.cpp
index 68b29d93a..5135ecb4b 100644
--- a/src/daemon/rpc_command_executor.cpp
+++ b/src/daemon/rpc_command_executor.cpp
@@ -34,7 +34,7 @@
 #include "daemon/rpc_command_executor.h"
 #include "rpc/core_rpc_server_commands_defs.h"
 #include "cryptonote_core/cryptonote_core.h"
-#include "cryptonote_basic/hardfork.h"
+#include "cryptonote_core/hardfork.h"
 #include <boost/format.hpp>
 #include <ctime>
 #include <string>
diff --git a/tests/unit_tests/hardfork.cpp b/tests/unit_tests/hardfork.cpp
index 08c4276c8..512216ded 100644
--- a/tests/unit_tests/hardfork.cpp
+++ b/tests/unit_tests/hardfork.cpp
@@ -33,7 +33,7 @@
 
 #include "blockchain_db/lmdb/db_lmdb.h"
 #include "cryptonote_basic/cryptonote_format_utils.h"
-#include "cryptonote_basic/hardfork.h"
+#include "cryptonote_core/hardfork.h"
 
 using namespace cryptonote;