diff --git a/org.eclipse.scout.rap.basic.target/org.eclipse.scout.rap.basic.target_template.target b/org.eclipse.scout.rap.basic.target/org.eclipse.scout.rap.basic.target_template.target
index 9cef414..bae090f 100644
--- a/org.eclipse.scout.rap.basic.target/org.eclipse.scout.rap.basic.target_template.target
+++ b/org.eclipse.scout.rap.basic.target/org.eclipse.scout.rap.basic.target_template.target
@@ -9,7 +9,7 @@
     </location>
 
     <location includeAllPlatforms="true" includeMode="slicer" includeSource="true" type="InstallableUnit">
-      <repository location="jar:$SCOUT_RT_REPO_TARGET_LOCATION$/target/org.eclipse.scout.rt.rap-repository-4.1.0-SNAPSHOT.zip!/"/>
+      <repository location="jar:$SCOUT_RT_RAP_REPO_TARGET_LOCATION$/target/org.eclipse.scout.rt.rap-repository-4.1.0-SNAPSHOT.zip!/"/>
 
       <unit id="org.eclipse.scout.rt.rap.source.feature.group" version="0.0.0"/>
     </location>
diff --git a/org.eclipse.scout.rap.basic.target/pom.xml b/org.eclipse.scout.rap.basic.target/pom.xml
index 428360c..7fcbf19 100644
--- a/org.eclipse.scout.rap.basic.target/pom.xml
+++ b/org.eclipse.scout.rap.basic.target/pom.xml
@@ -75,7 +75,7 @@
           <regex>false</regex>
           <replacements>
             <replacement>
-              <token>$SCOUT_RT_REPO_TARGET_LOCATION$</token>
+              <token>$SCOUT_RT_RAP_REPO_TARGET_LOCATION$</token>
               <value>${scout-rt-rap-repo-location}</value>
             </replacement>
           </replacements>
diff --git a/org.eclipse.scout.rap.repository/pom.xml b/org.eclipse.scout.rap.repository/pom.xml
index 3f2015d..203fe9f 100644
--- a/org.eclipse.scout.rap.repository/pom.xml
+++ b/org.eclipse.scout.rap.repository/pom.xml
@@ -69,34 +69,6 @@
 
   <profiles>
     <profile>
-      <id>onlyRepoBuild</id>
-
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.eclipse.tycho</groupId>
-            <artifactId>target-platform-configuration</artifactId>
-            <configuration>
-              <target>
-                <artifact>
-                  <groupId>org.eclipse.scout</groupId>
-                  <artifactId>org.eclipse.scout.target</artifactId>
-                  <version>${scout.version}</version>
-                  <classifier>${target-platform}</classifier>
-                </artifact>
-                <artifact>
-                  <groupId>org.eclipse.scout</groupId>
-                  <artifactId>org.eclipse.scout.rap.basic.target</artifactId>
-                  <version>${project.version}</version>
-                </artifact>
-              </target>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-
-    <profile>
       <id>eclipse-sign</id>
 
       <build>
diff --git a/org.eclipse.scout.repo.all.target/.gitignore b/org.eclipse.scout.repo.all.target/.gitignore
new file mode 100644
index 0000000..7348fbc
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/.gitignore
@@ -0,0 +1 @@
+/org.eclipse.scout.repo.all.target.target
\ No newline at end of file
diff --git a/org.eclipse.scout.repo.all.target/.project b/org.eclipse.scout.repo.all.target/.project
new file mode 100644
index 0000000..77a6856
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/.project
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.scout.repo.all.target</name>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+	</natures>
+</projectDescription>
diff --git a/org.eclipse.scout.repo.all.target/.settings/de.loskutov.anyedit.AnyEditTools.prefs b/org.eclipse.scout.repo.all.target/.settings/de.loskutov.anyedit.AnyEditTools.prefs
new file mode 100644
index 0000000..1a6ba3e
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/.settings/de.loskutov.anyedit.AnyEditTools.prefs
@@ -0,0 +1,16 @@
+activeContentFilterList=*.makefile,makefile,*.Makefile,Makefile,Makefile.*,*.mk,MANIFEST.MF
+addNewLine=true
+convertActionOnSaave=AnyEdit.CnvrtTabToSpaces
+eclipse.preferences.version=1
+ignoreBlankLinesWhenTrimming=false
+inActiveContentFilterList=
+javaTabWidthForJava=true
+org.eclipse.jdt.ui.editor.tab.width=2
+projectPropsEnabled=true
+removeTrailingSpaces=true
+replaceAllSpaces=false
+replaceAllTabs=true
+saveAndAddLine=false
+saveAndConvert=true
+saveAndTrim=true
+useModulo4Tabs=false
diff --git a/org.eclipse.scout.repo.all.target/.settings/org.eclipse.core.resources.prefs b/org.eclipse.scout.repo.all.target/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/org.eclipse.scout.repo.all.target/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.scout.repo.all.target/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 0000000..5a0ad22
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/org.eclipse.scout.repo.all.target/.settings/org.eclipse.m2e.core.prefs b/org.eclipse.scout.repo.all.target/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/org.eclipse.scout.repo.all.target/epl-v10.html b/org.eclipse.scout.repo.all.target/epl-v10.html
new file mode 100644
index 0000000..3998fce
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/epl-v10.html
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>Eclipse Public License - Version 1.0</title>
+<style type="text/css">
+  body {
+    size: 8.5in 11.0in;
+    margin: 0.25in 0.5in 0.25in 0.5in;
+    tab-interval: 0.5in;
+    }
+  p {  	
+    margin-left: auto;
+    margin-top:  0.5em;
+    margin-bottom: 0.5em;
+    }
+  p.list {
+  	margin-left: 0.5in;
+    margin-top:  0.05em;
+    margin-bottom: 0.05em;
+    }
+  </style>
+
+</head>
+
+<body lang="EN-US">
+
+<h2>Eclipse Public License - v 1.0</h2>
+
+<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE, REPRODUCTION OR
+DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
+AGREEMENT.</p>
+
+<p><b>1. DEFINITIONS</b></p>
+
+<p>&quot;Contribution&quot; means:</p>
+
+<p class="list">a) in the case of the initial Contributor, the initial
+code and documentation distributed under this Agreement, and</p>
+<p class="list">b) in the case of each subsequent Contributor:</p>
+<p class="list">i) changes to the Program, and</p>
+<p class="list">ii) additions to the Program;</p>
+<p class="list">where such changes and/or additions to the Program
+originate from and are distributed by that particular Contributor. A
+Contribution 'originates' from a Contributor if it was added to the
+Program by such Contributor itself or anyone acting on such
+Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in
+conjunction with the Program under their own license agreement, and (ii)
+are not derivative works of the Program.</p>
+
+<p>&quot;Contributor&quot; means any person or entity that distributes
+the Program.</p>
+
+<p>&quot;Licensed Patents&quot; mean patent claims licensable by a
+Contributor which are necessarily infringed by the use or sale of its
+Contribution alone or when combined with the Program.</p>
+
+<p>&quot;Program&quot; means the Contributions distributed in accordance
+with this Agreement.</p>
+
+<p>&quot;Recipient&quot; means anyone who receives the Program under
+this Agreement, including all Contributors.</p>
+
+<p><b>2. GRANT OF RIGHTS</b></p>
+
+<p class="list">a) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works
+of, publicly display, publicly perform, distribute and sublicense the
+Contribution of such Contributor, if any, and such derivative works, in
+source code and object code form.</p>
+
+<p class="list">b) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell,
+offer to sell, import and otherwise transfer the Contribution of such
+Contributor, if any, in source code and object code form. This patent
+license shall apply to the combination of the Contribution and the
+Program if, at the time the Contribution is added by the Contributor,
+such addition of the Contribution causes such combination to be covered
+by the Licensed Patents. The patent license shall not apply to any other
+combinations which include the Contribution. No hardware per se is
+licensed hereunder.</p>
+
+<p class="list">c) Recipient understands that although each Contributor
+grants the licenses to its Contributions set forth herein, no assurances
+are provided by any Contributor that the Program does not infringe the
+patent or other intellectual property rights of any other entity. Each
+Contributor disclaims any liability to Recipient for claims brought by
+any other entity based on infringement of intellectual property rights
+or otherwise. As a condition to exercising the rights and licenses
+granted hereunder, each Recipient hereby assumes sole responsibility to
+secure any other intellectual property rights needed, if any. For
+example, if a third party patent license is required to allow Recipient
+to distribute the Program, it is Recipient's responsibility to acquire
+that license before distributing the Program.</p>
+
+<p class="list">d) Each Contributor represents that to its knowledge it
+has sufficient copyright rights in its Contribution, if any, to grant
+the copyright license set forth in this Agreement.</p>
+
+<p><b>3. REQUIREMENTS</b></p>
+
+<p>A Contributor may choose to distribute the Program in object code
+form under its own license agreement, provided that:</p>
+
+<p class="list">a) it complies with the terms and conditions of this
+Agreement; and</p>
+
+<p class="list">b) its license agreement:</p>
+
+<p class="list">i) effectively disclaims on behalf of all Contributors
+all warranties and conditions, express and implied, including warranties
+or conditions of title and non-infringement, and implied warranties or
+conditions of merchantability and fitness for a particular purpose;</p>
+
+<p class="list">ii) effectively excludes on behalf of all Contributors
+all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;</p>
+
+<p class="list">iii) states that any provisions which differ from this
+Agreement are offered by that Contributor alone and not by any other
+party; and</p>
+
+<p class="list">iv) states that source code for the Program is available
+from such Contributor, and informs licensees how to obtain it in a
+reasonable manner on or through a medium customarily used for software
+exchange.</p>
+
+<p>When the Program is made available in source code form:</p>
+
+<p class="list">a) it must be made available under this Agreement; and</p>
+
+<p class="list">b) a copy of this Agreement must be included with each
+copy of the Program.</p>
+
+<p>Contributors may not remove or alter any copyright notices contained
+within the Program.</p>
+
+<p>Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.</p>
+
+<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
+
+<p>Commercial distributors of software may accept certain
+responsibilities with respect to end users, business partners and the
+like. While this license is intended to facilitate the commercial use of
+the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create
+potential liability for other Contributors. Therefore, if a Contributor
+includes the Program in a commercial product offering, such Contributor
+(&quot;Commercial Contributor&quot;) hereby agrees to defend and
+indemnify every other Contributor (&quot;Indemnified Contributor&quot;)
+against any losses, damages and costs (collectively &quot;Losses&quot;)
+arising from claims, lawsuits and other legal actions brought by a third
+party against the Indemnified Contributor to the extent caused by the
+acts or omissions of such Commercial Contributor in connection with its
+distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In
+order to qualify, an Indemnified Contributor must: a) promptly notify
+the Commercial Contributor in writing of such claim, and b) allow the
+Commercial Contributor to control, and cooperate with the Commercial
+Contributor in, the defense and any related settlement negotiations. The
+Indemnified Contributor may participate in any such claim at its own
+expense.</p>
+
+<p>For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those
+performance claims and warranties, and if a court requires any other
+Contributor to pay any damages as a result, the Commercial Contributor
+must pay those damages.</p>
+
+<p><b>5. NO WARRANTY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
+PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS
+OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
+ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
+OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and
+distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to
+the risks and costs of program errors, compliance with applicable laws,
+damage to or loss of data, programs or equipment, and unavailability or
+interruption of operations.</p>
+
+<p><b>6. DISCLAIMER OF LIABILITY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
+NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
+DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
+
+<p><b>7. GENERAL</b></p>
+
+<p>If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further action
+by the parties hereto, such provision shall be reformed to the minimum
+extent necessary to make such provision valid and enforceable.</p>
+
+<p>If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other
+software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the
+date such litigation is filed.</p>
+
+<p>All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of time
+after becoming aware of such noncompliance. If all Recipient's rights
+under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive.</p>
+
+<p>Everyone is permitted to copy and distribute copies of this
+Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The
+Agreement Steward reserves the right to publish new versions (including
+revisions) of this Agreement from time to time. No one other than the
+Agreement Steward has the right to modify this Agreement. The Eclipse
+Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a
+suitable separate entity. Each new version of the Agreement will be
+given a distinguishing version number. The Program (including
+Contributions) may always be distributed subject to the version of the
+Agreement under which it was received. In addition, after a new version
+of the Agreement is published, Contributor may elect to distribute the
+Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
+rights or licenses to the intellectual property of any Contributor under
+this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this
+Agreement are reserved.</p>
+
+<p>This Agreement is governed by the laws of the State of New York and
+the intellectual property laws of the United States of America. No party
+to this Agreement will bring a legal action under this Agreement more
+than one year after the cause of action arose. Each party waives its
+rights to a jury trial in any resulting litigation.</p>
+
+</body>
+
+</html>
\ No newline at end of file
diff --git a/org.eclipse.scout.repo.all.target/org.eclipse.scout.repo.all.target_template.target b/org.eclipse.scout.repo.all.target/org.eclipse.scout.repo.all.target_template.target
new file mode 100644
index 0000000..25763d4
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/org.eclipse.scout.repo.all.target_template.target
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<?pde version="3.6"?>
+<target name="scout-repo-all-target.target">
+  <locations>
+    <location includeAllPlatforms="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+      <repository location="jar:$SCOUT_RT_RAP_REPO_TARGET_LOCATION$/target/org.eclipse.scout.rt.rap-repository-4.1.0-SNAPSHOT.zip!/"/>
+
+      <unit id="org.eclipse.scout.rt.rap.source.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.scout.rt.rap.testing.source.feature.group" version="0.0.0"/>
+    </location>
+
+    <location includeAllPlatforms="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+      <repository location="jar:$SCOUT_RT_INCUBATOR_REPO_TARGET_LOCATION$/target/org.eclipse.scout.rt.ui.rap.incubator.filechooser-repository-4.1.0-SNAPSHOT.zip!/"/>
+
+      <unit id="org.eclipse.scout.rt.ui.rap.incubator.filechooser.source.feature.group" version="0.0.0"/>
+    </location>
+
+    <location includeAllPlatforms="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+      <repository location="jar:$SCOUT_SDK_REPO_TARGET_LOCATION$/target/org.eclipse.scout.sdk-repository-4.1.0-SNAPSHOT.zip!/"/>
+
+      <unit id="org.eclipse.scout.sdk.source.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.scout.sdk.rap.source.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.scout.sdk.testing.source.feature.group" version="0.0.0"/>
+    </location>
+
+    <location includeAllPlatforms="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+      <repository location="jar:$SCOUT_RT_REPO_TARGET_LOCATION$/target/org.eclipse.scout.rt-repository-4.1.0-SNAPSHOT.zip!/"/>
+
+      <unit id="org.eclipse.scout.rt.source.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.scout.rt.testing.source.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.scout.rt.spec.source.feature.group" version="0.0.0"/>
+    </location>
+
+  </locations>
+</target>
diff --git a/org.eclipse.scout.repo.all.target/pom.xml b/org.eclipse.scout.repo.all.target/pom.xml
new file mode 100644
index 0000000..bef42d3
--- /dev/null
+++ b/org.eclipse.scout.repo.all.target/pom.xml
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (c) 2014 BSI Business Systems Integration AG.
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+
+  Contributors:
+     Ken Lee - initial contribution
+-->
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.scout</groupId>
+    <artifactId>org.eclipse.scout.parent</artifactId>
+    <version>4.1.0-SNAPSHOT</version>
+    <relativePath>../org.eclipse.scout.parent</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.scout.repo.all.target</artifactId>
+  <packaging>eclipse-target-definition</packaging>
+
+  <properties>
+    <target-template>${basedir}/org.eclipse.scout.repo.all.target_template.target</target-template>
+    <target-gen-filename>${project.artifactId}.target</target-gen-filename>
+    <target-gen-file>${basedir}/${target-gen-filename}</target-gen-file>
+
+    <scout-rt-rap-repo-location>${project.baseUri}../org.eclipse.scout.rt/org.eclipse.scout.rt.rap-repository</scout-rt-rap-repo-location>
+    <scout-rt-incubator-repo-location>${project.baseUri}../org.eclipse.scout.rt.incubator/org.eclipse.scout.rt.ui.rap.incubator.filechooser-repository</scout-rt-incubator-repo-location>
+    <scout-rt-repo-location>${project.baseUri}../org.eclipse.scout.rt/org.eclipse.scout.rt-repository</scout-rt-repo-location>
+    <scout-sdk-repo-location>${project.baseUri}../org.eclipse.scout.sdk/org.eclipse.scout.sdk-repository</scout-sdk-repo-location>
+  </properties>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-clean-plugin</artifactId>
+        <version>2.5</version>
+        <executions>
+          <execution>
+            <id>auto-clean</id>
+            <phase>clean</phase>
+            <goals>
+              <goal>clean</goal>
+            </goals>
+            <configuration>
+              <filesets>
+                <fileset>
+                  <directory>${basedir}</directory>
+                  <includes>
+                    <include>${target-gen-file}</include>
+                  </includes>
+                </fileset>
+              </filesets>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+
+      <plugin>
+        <groupId>com.google.code.maven-replacer-plugin</groupId>
+        <artifactId>replacer</artifactId>
+        <version>1.5.2</version>
+        <executions>
+          <execution>
+            <phase>generate-sources</phase>
+            <goals>
+              <goal>replace</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <ignoreMissingFile>true</ignoreMissingFile>
+          <file>${target-template}</file>
+          <outputFile>${target-gen-file}</outputFile>
+          <regex>false</regex>
+          <replacements>
+            <replacement>
+              <token>$SCOUT_RT_RAP_REPO_TARGET_LOCATION$</token>
+              <value>${scout-rt-rap-repo-location}</value>
+            </replacement>
+            <replacement>
+              <token>$SCOUT_RT_INCUBATOR_REPO_TARGET_LOCATION$</token>
+              <value>${scout-rt-incubator-repo-location}</value>
+            </replacement>
+            <replacement>
+              <token>$SCOUT_RT_REPO_TARGET_LOCATION$</token>
+              <value>${scout-rt-repo-location}</value>
+            </replacement>
+            <replacement>
+              <token>$SCOUT_SDK_REPO_TARGET_LOCATION$</token>
+              <value>${scout-sdk-repo-location}</value>
+            </replacement>
+          </replacements>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
\ No newline at end of file
diff --git a/org.eclipse.scout.rt b/org.eclipse.scout.rt
index f40242e..95cd51d 160000
--- a/org.eclipse.scout.rt
+++ b/org.eclipse.scout.rt
@@ -1 +1 @@
-Subproject commit f40242eb6c534a1ef722d09e55baf30cdc58e160
+Subproject commit 95cd51df0a887422682edd16039df7d2036449e4
diff --git a/pom.xml b/pom.xml
index 1c5e313..f7a7d73 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,6 +21,7 @@
   <properties>
     <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/scout/org.eclipse.scout-aggregator.git</tycho.scmUrl>
     <scout.base.version>4.1.0</scout.base.version>
+    <tycho.version>0.20.0</tycho.version>
   </properties>
 
   <distributionManagement>
@@ -68,10 +69,45 @@
     </profile>
 
     <profile>
-      <id>generateRapTarget</id>
+      <id>onlyRepoBuild</id>
+
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.eclipse.tycho</groupId>
+            <artifactId>target-platform-configuration</artifactId>
+            <version>${tycho.version}</version>
+            <configuration>
+              <target>
+                <artifact>
+                  <groupId>org.eclipse.scout</groupId>
+                  <artifactId>org.eclipse.scout.target</artifactId>
+                  <version>${scout.version}</version>
+                  <classifier>${target-platform}</classifier>
+                </artifact>
+                <artifact>
+                  <groupId>org.eclipse.scout</groupId>
+                  <artifactId>org.eclipse.scout.repo.all.target</artifactId>
+                  <version>${project.version}</version>
+                </artifact>
+                <artifact>
+                  <groupId>org.eclipse.scout</groupId>
+                  <artifactId>org.eclipse.scout.rap.basic.target</artifactId>
+                  <version>${project.version}</version>
+                </artifact>
+              </target>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+
+    <profile>
+      <id>generateTargets</id>
 
       <modules>
         <module>org.eclipse.scout.rap.basic.target</module>
+        <module>org.eclipse.scout.repo.all.target</module>
       </modules>
     </profile>
 
