Add a +RTS --info flag print various info; partially fixes trac #1517
authorIan Lynagh <igloo@earth.li>
Sun, 22 Jul 2007 17:00:42 +0000 (17:00 +0000)
committerIan Lynagh <igloo@earth.li>
Sun, 22 Jul 2007 17:00:42 +0000 (17:00 +0000)
rts/Makefile
rts/RtsFlags.c

index 2c5dcc4..9ab9652 100644 (file)
@@ -127,6 +127,11 @@ endif
 # SRC_HC_OPTS += -fPIC
 
 RtsMessages_CC_OPTS += -DProjectVersion=\"$(ProjectVersion)\"
+RtsFlags_CC_OPTS += -DProjectVersion=\"$(ProjectVersion)\"
+RtsFlags_CC_OPTS += -DRtsWay=\"rts$(_way)\"
+RtsFlags_CC_OPTS += -DHostPlatform=\"$(HOSTPLATFORM)\"
+RtsFlags_CC_OPTS += -DBuildPlatform=\"$(BUILDPLATFORM)\"
+RtsFlags_CC_OPTS += -DTargetPlatform=\"$(TARGETPLATFORM)\"
 
 ifeq "$(way)" "mp"
 SRC_HC_OPTS += -I$$PVM_ROOT/include
index 639a915..1e8654d 100644 (file)
@@ -682,6 +682,16 @@ error = rtsTrue;
                                &rts_argv[arg][2])) {
                       RtsFlags.MiscFlags.install_signal_handlers = rtsFalse;
                   }
+                  else if (strequal("info",
+                               &rts_argv[arg][2])) {
+                      printf("RTS info:\n");
+                      printf("RTS from GHC " ProjectVersion "\n");
+                      printf("RTS way " RtsWay "\n");
+                      printf("Host platform " HostPlatform "\n");
+                      printf("Build platform " BuildPlatform "\n");
+                      printf("Target platform " TargetPlatform "\n");
+                      exit(0);
+                  }
                   else {
                      errorBelch("unknown RTS option: %s",rts_argv[arg]);
                      error = rtsTrue;