releng: add creation of DMG package for mac M1

We are learning about this as we go. Here are sources of information
that were useful:

EF documentation:
https://wiki.eclipse.org/IT_Infrastructure_Doc#macOS_DMG_file_creation

Bug (previous effort):
https://bugs.eclipse.org/bugs/show_bug.cgi?id=578792

EPP example:
https://github.com/eclipse-packaging/packages/blob/b25cbdb07e72c73c2f932ae9406d50f6e8707eca/releng/org.eclipse.epp.config/parent/product/pom.xml#L120-L152

Also, required infrastructure:  add "org.eclipse.equinox.executable" to
the "tracing.product" file and similar for legacy products. Add the
"environment" for "macosx/aarch64" in root pom.xml.

[added] Create .dmg package for mac M1 (aarch64 and x86_64)

Signed-off-by: Marc Dumais <marc.dumais@ericsson.com>
Change-Id: I4d272aed20bd3bf10448023501f83ae219e7f246
Reviewed-on: https://git.eclipse.org/r/c/tracecompass/org.eclipse.tracecompass/+/204282
Tested-by: Trace Compass Bot <tracecompass-bot@eclipse.org>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
diff --git a/pom.xml b/pom.xml
index 566f3b5..6a5c9b7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -415,6 +415,11 @@
                 <arch>x86_64</arch>
             </environment>
             <environment>
+                <os>macosx</os>
+                <ws>cocoa</ws>
+                <arch>aarch64</arch>
+            </environment>
+            <environment>
                 <os>linux</os>
                 <ws>gtk</ws>
                 <arch>x86_64</arch>
diff --git a/rcp/org.eclipse.tracecompass.rcp.product/legacy-e4.23-e4.25/tracing.product b/rcp/org.eclipse.tracecompass.rcp.product/legacy-e4.23-e4.25/tracing.product
index 1ede566..4669ca7 100644
--- a/rcp/org.eclipse.tracecompass.rcp.product/legacy-e4.23-e4.25/tracing.product
+++ b/rcp/org.eclipse.tracecompass.rcp.product/legacy-e4.23-e4.25/tracing.product
@@ -143,6 +143,7 @@
       <feature id="org.eclipse.tracecompass.jsontrace"/>
       <feature id="org.eclipse.ecf.filetransfer.httpclient5.feature"/>
       <feature id="org.eclipse.tracecompass.tmf.cli"/>
+      <feature id="org.eclipse.equinox.executable"/>
    </features>
 
    <configurations>
diff --git a/rcp/org.eclipse.tracecompass.rcp.product/legacy/tracing.product b/rcp/org.eclipse.tracecompass.rcp.product/legacy/tracing.product
index e661856..6ca0002 100644
--- a/rcp/org.eclipse.tracecompass.rcp.product/legacy/tracing.product
+++ b/rcp/org.eclipse.tracecompass.rcp.product/legacy/tracing.product
@@ -143,6 +143,7 @@
       <feature id="org.eclipse.tracecompass.jsontrace"/>
       <feature id="org.eclipse.ecf.filetransfer.httpclient45.feature"/>
       <feature id="org.eclipse.tracecompass.tmf.cli"/>
+      <feature id="org.eclipse.equinox.executable"/>
    </features>
 
    <configurations>
diff --git a/rcp/org.eclipse.tracecompass.rcp.product/pom.xml b/rcp/org.eclipse.tracecompass.rcp.product/pom.xml
index dda6730..ec274b4 100644
--- a/rcp/org.eclipse.tracecompass.rcp.product/pom.xml
+++ b/rcp/org.eclipse.tracecompass.rcp.product/pom.xml
@@ -230,6 +230,48 @@
       </build>
       </profile>
       <profile>
+        <id>rcp-DMG-package-mac</id>
+        <build>
+          <plugins>
+            <plugin>
+              <groupId>org.eclipse.cbi.maven.plugins</groupId>
+              <artifactId>eclipse-dmg-packager</artifactId>
+              <version>${cbi-plugins.version}</version>
+              <executions>
+                <execution>
+                  <id>dmg-package-rcp-aarch64</id>
+                  <phase>package</phase>
+                  <goals>
+                    <goal>package-dmg</goal>
+                  </goals>
+                  <configuration>
+                    <source>${project.build.directory}/products/${archiveFileName}-macosx.cocoa.aarch64.tar.gz</source>
+                    <serviceUrl>https://cbi.eclipse.org/macos/packager/dmg/create</serviceUrl>
+                    <continueOnFail>false</continueOnFail>
+                    <timeoutMillis>600000</timeoutMillis>
+                    <sign>true</sign>
+                  </configuration>
+                </execution>
+                <execution>
+                  <id>dmg-package-rcp-x86-64</id>
+                  <phase>package</phase>
+                  <goals>
+                    <goal>package-dmg</goal>
+                  </goals>
+                  <configuration>
+                    <source>${project.build.directory}/products/${archiveFileName}-macosx.cocoa.x86_64.tar.gz</source>
+                    <serviceUrl>https://cbi.eclipse.org/macos/packager/dmg/create</serviceUrl>
+                    <continueOnFail>false</continueOnFail>
+                    <timeoutMillis>600000</timeoutMillis>
+                    <sign>true</sign>
+                  </configuration>
+                </execution>
+              </executions>
+            </plugin>
+          </plugins>
+      </build>
+      </profile>
+      <profile>
         <id>rcp-sign-windows</id>
         <build>
           <plugins>
diff --git a/rcp/org.eclipse.tracecompass.rcp.product/tracing.product b/rcp/org.eclipse.tracecompass.rcp.product/tracing.product
index d5a2eef..1f86a0e 100644
--- a/rcp/org.eclipse.tracecompass.rcp.product/tracing.product
+++ b/rcp/org.eclipse.tracecompass.rcp.product/tracing.product
@@ -143,6 +143,7 @@
       <feature id="org.eclipse.tracecompass.jsontrace"/>
       <feature id="org.eclipse.ecf.filetransfer.httpclient5.feature"/>
       <feature id="org.eclipse.tracecompass.tmf.cli"/>
+      <feature id="org.eclipse.equinox.executable"/>
    </features>
 
    <configurations>