target "Interoperability - Oxygen" with source requirements

location "http://download.eclipse.org/releases/oxygen/" {
 org.eclipse.core.runtime lazy
 org.eclipse.emf.ecore lazy
 org.eclipse.emf.ecore.xmi lazy
 org.eclipse.uml2.common lazy
 org.eclipse.ocl.ecore lazy
 org.eclipse.emf.edit lazy
 org.eclipse.emf.ecore.edit lazy
 org.eclipse.uml2.common.edit lazy
 org.eclipse.core.resources lazy
 org.eclipse.emf.edit.ui lazy
 org.eclipse.ui.ide lazy
 org.eclipse.ui.forms lazy
 org.eclipse.m2m.qvt.oml lazy
 org.eclipse.gmf.runtime.diagram.ui.render lazy
 
 org.eclipse.m2m.qvt.oml.project lazy
 org.eclipse.xtext lazy
 org.eclipse.xtext.common.types lazy
 org.eclipse.xtext.ui lazy
 org.eclipse.xtext.ui.shared lazy
 org.eclipse.xtext.ui.codetemplates.ui lazy
 
 org.eclipse.uml2.uml.edit lazy
 org.eclipse.uml2.uml.resources lazy
 org.eclipse.xtext.xbase.lib lazy
 org.eclipse.xtend.lib lazy
 
}

//manualUpdate
location Papyrus "http://download.eclipse.org/modeling/mdt/papyrus/updates/releases/oxygen/3.1.0/?d" {
 org.eclipse.papyrus.infra.onefile lazy
 org.eclipse.papyrus.infra.gmfdiag.commands lazy
 org.eclipse.papyrus.uml.diagram.common lazy
 
 org.eclipse.papyrus.uml.m2m.qvto.common lazy
 org.eclipse.papyrus.uml.m2m.qvto.common.blackboxes lazy
 org.eclipse.papyrus.uml.internationalization lazy
 org.eclipse.papyrus.infra.doc lazy
 
 org.eclipse.papyrus.uml.documentation.profile lazy
 org.eclipse.papyrus.infra.gmfdiag.common lazy
 org.eclipse.papyrus.eclipse.project.editors lazy
 
 org.eclipse.papyrus.uml.m2m.qvto.common.source lazy
 org.eclipse.papyrus.uml.m2m.qvto.common.blackboxes.source lazy
}

//manualUpdate
location sysml "https://hudson.eclipse.org/papyrus/view/Sysml/job/papyrus-sysml11-oxygen/lastSuccessfulBuild/artifact/org.eclipse.papyrus.sysml11.p2/target/repository/" {
 org.eclipse.papyrus.sysml.feature.feature.group lazy
 org.eclipse.papyrus.sysml.feature.source.feature.group lazy
 org.eclipse.papyrus.sysml.diagram.feature.source.feature.group lazy
 org.eclipse.papyrus.sysml.diagram.feature.feature.group lazy
 org.eclipse.papyrus.sysml.properties.feature.feature.group lazy
 org.eclipse.papyrus.sysml.properties.feature.source.feature.group lazy
 org.eclipse.papyrus.sysml.modelexplorer.feature.feature.group lazy
 org.eclipse.papyrus.sysml.modelexplorer.feature.source.feature.group lazy
 org.eclipse.papyrus.sysml.nattable.feature.feature.group lazy
 org.eclipse.papyrus.sysml.nattable.feature.source.feature.group lazy
 
}

//manualUpdate
location sysml14 "https://hudson.eclipse.org/papyrus/job/papyrus-sysml-oxygen/lastSuccessfulBuild/artifact/releng/org.eclipse.papyrus.sysml14.p2/target/repository/" {
 org.eclipse.papyrus.sysml14.feature.feature.group lazy
 org.eclipse.papyrus.sysml14.feature.source.feature.group lazy
}

location dsml.validation "http://download.eclipse.org/modeling/mdt/papyrus/incubation/dsml.validation/updates/oxygen/" {
 org.eclipse.papyrus.dsml.validation.feature.feature.group lazy
 org.eclipse.papyrus.dsml.validation.feature.source.feature.group lazy
}

//manualUpdate 
location orbit "http://download.eclipse.org/tools/orbit/downloads/drops/R20170516192513/repository/" {
 org.apache.commons.io lazy
 org.apache.commons.io.source lazy

}