--- a/Makefile
+++ b/Makefile
@@ -187,6 +187,15 @@
 PROGRAMS += mod_ts
 mod_ts: $(mod_ts_TARGET)
 
+# Red Alert 2
+mod_ra2_SRCS := $(shell find OpenRA.Mods.RA2/ -iname '*.cs')
+mod_ra2_TARGET = mods/ra2/OpenRA.Mods.RA2.dll
+mod_ra2_KIND = library
+mod_ra2_DEPS = $(STD_MOD_DEPS) $(mod_common_TARGET)
+mod_ra2_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(mod_common_TARGET)
+PROGRAMS += mod_ra2
+mod_ra2: $(mod_ra2_TARGET)
+
 check-scripts:
 	@echo
 	@echo "Checking for Lua syntax errors..."
@@ -222,6 +231,9 @@
 	@echo "Checking for code style violations in OpenRA.Mods.TS..."
 	@mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Mods.TS
 	@echo
+	@echo "Checking for code style violations in OpenRA.Mods.RA2..."
+	@mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Mods.RA2
+	@echo
 	@echo "Checking for code style violations in OpenRA.Utility..."
 	@mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Utility
 	@echo
@@ -256,6 +268,9 @@
 	@mono --debug OpenRA.Utility.exe ts --check-yaml
 	@mono --debug OpenRA.Utility.exe ts --check-sequence-sprites
 	@echo
+	@echo "Testing Red Alert 2 mod MiniYAML..."
+	@mono --debug OpenRA.Utility.exe ra2 --check-yaml
+	@echo
 	@echo "Testing Dune 2000 mod MiniYAML..."
 	@mono --debug OpenRA.Utility.exe d2k --check-yaml
 	@mono --debug OpenRA.Utility.exe d2k --check-sequence-sprites
@@ -324,7 +339,7 @@
 
 package: all-dependencies core tools docs version
 
-mods: mod_common mod_ra mod_cnc mod_d2k mod_ts
+mods: mod_common mod_ra mod_cnc mod_d2k mod_ts mod_ra2
 
 all: dependencies core tools
 
@@ -393,6 +408,10 @@
 	@$(CP_R) mods/d2k "$(DATA_INSTALL_DIR)/mods/"
 	@$(INSTALL_PROGRAM) $(mod_d2k_TARGET) "$(DATA_INSTALL_DIR)/mods/d2k"
 	@$(CP_R) mods/modchooser "$(DATA_INSTALL_DIR)/mods/"
+	@$(CP_R) mods/ts "$(DATA_INSTALL_DIR)/mods/"
+	@$(INSTALL_PROGRAM) $(mod_ts_TARGET) "$(DATA_INSTALL_DIR)/mods/ts"
+	@$(CP_R) mods/ra2 "$(DATA_INSTALL_DIR)/mods/"
+	@$(INSTALL_PROGRAM) $(mod_ra2_TARGET) "$(DATA_INSTALL_DIR)/mods/ra2"
 
 	@$(INSTALL_DATA) "global mix database.dat" "$(DATA_INSTALL_DIR)/global mix database.dat"
 	@$(INSTALL_DATA) "GeoLite2-Country.mmdb.gz" "$(DATA_INSTALL_DIR)/GeoLite2-Country.mmdb.gz"
 
