diff --git a/CMakeLists.txt b/CMakeLists.txt
deleted file mode 100644
index 4696d5f8b437ee28bd176e8c9638c71976753ba1..0000000000000000000000000000000000000000
--- a/CMakeLists.txt
+++ /dev/null
@@ -1,62 +0,0 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-PROJECT(moose-all)
-
-## intialize paths
-set(MOOSE_CORE_DIR "${CMAKE_SOURCE_DIR}/moose-core")
-set(MOOSE_CORE_BUILD_DIR ${CMAKE_BINARY_DIR}/_build_moose_core)
-FILE(MAKE_DIRECTORY ${MOOSE_CORE_BUILD_DIR})
-set(DATA_DIR ${CMAKE_SOURCE_DIR}/data)
-
-add_custom_command(OUTPUT __moose_core_built__
-    COMMAND ${CMAKE_COMMAND} 
-        -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
-        -DDEBUG=OFF
-        ${MOOSE_CORE_DIR}
-    COMMAND $(MAKE)
-    WORKING_DIRECTORY ${MOOSE_CORE_BUILD_DIR}
-    VERBATIM
-    )
-
-add_custom_target(moose-all ALL
-    DEPENDS __moose_core_built__
-    )
-
-install(CODE
-    "
-    execute_process(COMMAND ctest --output-on-failure
-        WORKING_DIRECTORY ${MOOSE_CORE_BUILD_DIR})
-
-    execute_process(COMMAND make install
-        WORKING_DIRECTORY ${MOOSE_CORE_BUILD_DIR})
-    "
-    )
-
-## moose-gui
-## TODO: moose-gui should be a python module.
-set(MOOSE_GUI_DIR ${CMAKE_SOURCE_DIR}/moose-gui)
-
-install(DIRECTORY ${MOOSE_GUI_DIR}
-    DESTINATION lib/moose/gui
-    PATTERN ".git" EXCLUDE
-    )
-
-install(PROGRAMS ${DATA_DIR}/moosegui
-    DESTINATION bin
-    )
-
-## UNINSTALL
-add_custom_target(uninstall 
-    DEPENDS __uninstall_moose-core__ __uninstall_moose-gui__
-    )
-
-add_custom_command(OUTPUT __uninstall_moose-core__
-    COMMAND make uninstall
-    WORKING_DIRECTORY ${MOOSE_CORE_BUILD_DIR}
-    )
-
-add_custom_command(OUTPUT  __uninstall_moose-gui__
-    COMMAND ${CMAKE_COMMAND} -E remove_directory
-    ${CMAKE_INSTALL_PREFIX}/usr/lib/moose
-    COMMAND ${CMAKE_COMMAND} -R remove ${CMAKE_INSTALL_PREFIX}/bin/moosegui
-    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
-    )
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..2364f261a503841ee75808ed52ed852d5b434d63
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,22 @@
+PWD:=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
+MOOSECORE_DIR=$(PWD)/moose-core
+MOOSEGUI_DIR=$(PWD)/moose-gui
+
+MOOSECORE_BUILD_DIR=_moose_core_build_dir_
+
+## Prefix 
+PREFIX:=/usr
+
+all: build_moose
+
+build_moose: build_moose_core build_moose_gui
+
+build_moose_core: configure_moose_core 
+	cd $(MOOSECORE_BUILD_DIR) && $(MAKE)
+
+configure_moose_core:
+	mkdir -p $(MOOSECORE_BUILD_DIR)
+	cd $(MOOSECORE_BUILD_DIR) 
+	cmake -DCMAKE_INSTALL_PREFIX=$(PREFIX) $(MOOSECORE_DIR)
+
+
diff --git a/Makefile.clean b/Makefile.clean
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391