Bug 549585 - Contribute Chromium support to SWT
Binaries included in commit.
Initial chromium contribution. Follows the existing swt structure for
building and packaging.
Added SWT.CHROMIUM constant and modified BrowserFactory classes.
Added new source plugin org.eclipse.swt.browser.chromium with the java,
c jni and rust source code.
This contains buildChromium.xml with ant tasks to build rust code.
Minimal modifications to existing ant build scripts to support building
and packaging chromium.swt fragments.
Binaries repo contains 3 new fragments with OS specific build and
binaries.
New Chromium Test class added.
Browser examples can be run by passing
-Dorg.eclipse.swt.browser.DefaultType=chromium.
It requires built fragment .jar added to classpath.
CEF binaries (3.3071.1649.g98725e6) are required to run examples and and
tests and should be put in
~/.swt/lib/*/*/chromium-3071/.
Can be obtained from
http://dl.maketechnology.io/chromium-cef/rls/repository
Build instructions:
As usual with mvn and -Dnative property to build natives. Two flags
introduced in fragment poms: -DskipRust (to skip building rust)
-DskipJni (to skip building chromium jni)
Build will download CEF in order to build. Only requirement should be
rust installed (https://www.rust-lang.org/).
Change-Id: I0cd18c3601690c6540d550c398ac7bac6ffa24fa
Signed-off-by: Guillermo Zunino <guillez@gmail.com>
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/.project b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/.project
new file mode 100644
index 0000000..26951fe
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/META-INF/MANIFEST.MF b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..58e92b4
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/META-INF/MANIFEST.MF
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Fragment-Host: org.eclipse.swt;bundle-version="[3.115.100,4.0.0)"
+Bundle-Name: Chromium SWT Widget for Mac OS X (Cocoa)
+Bundle-Vendor: Eclipse.org
+Bundle-SymbolicName: org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64;singleton:=true
+Bundle-Version: 3.115.100.qualifier
+Bundle-ManifestVersion: 2
+Eclipse-PlatformFilter: (& (osgi.ws=cocoa) (osgi.os=macosx) (osgi.arch=x86_64))
+SWT-WS: cocoa
+SWT-OS: macosx
+SWT-Arch: x86_64
+Automatic-Module-Name: org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/about.html b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/about.html
new file mode 100644
index 0000000..6808b76
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/about.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>About</title>
+</head>
+<body lang="EN-US">
+ <h2>About This Content</h2>
+
+ <p>
+ March 16, 2020
+ </p>
+ <h3>License</h3>
+
+ <p>
+ The Eclipse Foundation makes available all content in this plug-in
+ ("Content"). Unless otherwise indicated below, the Content
+ is provided to you under the terms and conditions of the Eclipse
+ Public License Version 2.0 ("EPL"). A copy of the EPL is
+ available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
+ For purposes of the EPL, "Program" will mean the Content.
+ </p>
+
+ <p>
+ If you did not receive this Content directly from the Eclipse
+ Foundation, the Content is being redistributed by another party
+ ("Redistributor") and different terms and conditions may
+ apply to your use of any object code in the Content. Check the
+ Redistributor's license that was provided with the Content. If no such
+ license exists, contact the Redistributor. Unless otherwise indicated
+ below, the terms and conditions of the EPL still apply to any source
+ code in the Content and such source code may be obtained at <a
+ href="http://www.eclipse.org/">http://www.eclipse.org</a>.
+ </p>
+
+
+ <h3>Third Party Content</h3>
+ <p>The Content includes items that have been sourced from third
+ parties as set out below. If you did not receive this Content directly
+ from the Eclipse Foundation, the following is provided for
+ informational purposes only, and you should look to the
+ Redistributor's license for terms and conditions of use.</p>
+
+ <h4>Chromium Embedded Framework Binding</h4>
+ <p>The "Chromium Embedded Framework Binding" is a binding to the Chromium Embedded Framework C API. The Content may include any or all of the following files:</p>
+ <p>The following files in the plug-in JAR shall be defined as the native code portion of the Chromium Embedded Framework Binding:</p>
+ <ul>
+ <li>chromium-xxxx/libswt-chromium-cocoa-xxxx.jnilib (where "xxxx" is the version number)</li>
+ <li>chromium-xxxx/libchromium_swt_xxxx.dylib (where "xxxx" is the version number)</li>
+ <li>chromium-xxxx/chromium_supb-xxxx.app (where "xxxx" is the version number)</li>
+ </ul>
+ <p>The following files in both the plug-in JAR and the src.zip shall be defined respectively as the bytecode and source code portions of the Chromium Embedded Framework Binding:</p>
+ <ul>
+ <li>The contents of the directory org/eclipse/swt/internal/chromium</li>
+ </ul>
+ <p>The "Chromium Embedded Framework C API" is made available by the Chromium Embedded Framework open source project (<a href="https://bitbucket.org/chromiumembedded/cef/" target="_blank">https://bitbucket.org/chromiumembedded/cef/</a>). The Chromium Embedded Framework code was obtained under the terms of the BSD license. A copy of the BSD license is provided (<a href="about_files/cef-bsd.txt"target="_blank">cef-bsd.txt</a>) and is also available at <a href="https://bitbucket.org/chromiumembedded/cef/src/master/LICENSE.txt" target="_blank">https://bitbucket.org/chromiumembedded/cef/src/master/LICENSE.txt</a>. </p>
+
+</body>
+</html>
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/about_files/cef-bsd.txt b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/about_files/cef-bsd.txt
new file mode 100644
index 0000000..b55d613
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/about_files/cef-bsd.txt
@@ -0,0 +1,29 @@
+// Copyright (c) 2008-2020 Marshall A. Greenblatt. Portions Copyright (c)
+// 2006-2009 Google Inc. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/build.properties b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/build.properties
new file mode 100644
index 0000000..85a6e8c
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/build.properties
@@ -0,0 +1,17 @@
+################################################################################
+# Copyright (c) 2020 Equo
+#
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+# Guillermo Zunino, Equo - initial implementation
+################################################################################
+custom = true
+bin.includes = META-INF/,.,chromium-3071/,about_files/,about.html
+bin.excludes = library/
+source.. = src/
+src.includes = about.html,about_files/,chromium-3071/chromium.properties
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/build.xml b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/build.xml
new file mode 100644
index 0000000..7f76463
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/build.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2020 Equo
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License 2.0 which is available at
+ http://www.eclipse.org/legal/epl-2.0.
+
+ SPDX-License-Identifier: EPL-2.0
+
+ Contributors:
+ Guillermo Zunino, Equo - initial implementation
+ -->
+<project name="org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64" default="build.jars" basedir=".">
+
+ <property name="swt.ws" value="cocoa" />
+ <property name="swt.os" value="macosx" />
+ <property name="swt.arch" value="x86_64" />
+
+ <!-- These properties are used by eclipse when exporting as Deployable plugin and fragments -->
+ <property name="version.suffix" value="3.114.0" />
+
+ <condition property="plugindir" value="../../../eclipse.platform.swt/bundles/org.eclipse.swt.browser.chromium" else="${buildDirectory}/plugins/org.eclipse.swt.browser.chromium">
+ <available file="../../../eclipse.platform.swt/bundles/org.eclipse.swt" type="dir"/>
+ </condition>
+
+ <target name="@dot" depends="init" unless="@dot" description="Create jar: @dot.">
+ <path id="@dot.cp">
+ <fileset dir="../org.eclipse.swt.cocoa.macosx.x86_64/target">
+ <include name="*.jar"/>
+ </fileset>
+ </path>
+ <property name="dotcp" value="${toString:@dot.cp}"/>
+ <antcall target="org.eclipse.swt.fragment.@dot"/>
+ </target>
+
+ <target name="copy.cocoa.src">
+ <property name="copy.src.dir" value="${temp.folder}/@dot.src"/>
+ <delete dir="${copy.src.dir}" quiet="true"/>
+ <copy todir="${copy.src.dir}" failonerror="true" overwrite="true">
+ <fileset dir="${plugindir}/common/" excludes="rust-library/"/>
+ <fileset dir="${plugindir}/cocoa/"/>
+ </copy>
+ </target>
+
+ <target name="build_chromium" depends="init_fragment,get_version">
+ <property name="chromium_subp_output_dir" value="${basedir}/${fragment_dir}/chromium-${cef_ver}/chromium_subp-${swt_version}.app/Contents/MacOS/"/>
+ <property name="chromium_subp" value="chromium_subp"/>
+ <antcall target="chromiumbuild.build_chromium"/>
+ <exec dir="${chromium_subp_output_dir}" executable="install_name_tool" failonerror="true">
+ <arg line="-change '@rpath/Frameworks/Chromium Embedded Framework.framework/Chromium Embedded Framework' '@loader_path/../../../Chromium Embedded Framework.framework/Chromium Embedded Framework' ${chromium_subp}"/>
+ </exec>
+ <exec dir="${basedir}/${fragment_dir}/chromium-${cef_ver}" executable="install_name_tool" failonerror="true">
+ <arg line="-change '@rpath/Frameworks/Chromium Embedded Framework.framework/Chromium Embedded Framework' '@loader_path/Chromium Embedded Framework.framework/Chromium Embedded Framework' libchromium_swt_${swt_version}.dylib"/>
+ </exec>
+ <exec dir="${basedir}/${fragment_dir}/chromium-${cef_ver}" executable="install_name_tool" failonerror="true">
+ <arg line="-id '@loader_path/libchromium_swt_${swt_version}.dylib' libchromium_swt_${swt_version}.dylib"/>
+ </exec>
+ <exec dir="${basedir}/${fragment_dir}/chromium-${cef_ver}" executable="strip" failonerror="true">
+ <arg line="-r -u libchromium_swt_${swt_version}.dylib"/>
+ </exec>
+ </target>
+
+ <import file="${plugindir}/buildChromium.xml"/>
+</project>
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium.properties b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium.properties
new file mode 100644
index 0000000..aa7a3a5
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium.properties
@@ -0,0 +1,5 @@
+00=chromium-3071/chromium_subp-4936r6.app/Contents/Info.plist
+01=chromium-3071/chromium_subp-4936r6.app/Contents/MacOS/chromium_subp
+02=chromium-3071/chromium_subp-4936r6.app/Contents/PkgInfo
+03=chromium-3071/libchromium_swt_4936r6.dylib
+04=chromium-3071/libswt-chromium-cocoa-4936r6.jnilib
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium_subp-4936r6.app/Contents/Info.plist b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium_subp-4936r6.app/Contents/Info.plist
new file mode 100755
index 0000000..5f5fde3
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium_subp-4936r6.app/Contents/Info.plist
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>BuildMachineOSBuild</key>
+ <string>15F34</string>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>en</string>
+ <key>CFBundleDisplayName</key>
+ <string>chromium_subp</string>
+ <key>CFBundleExecutable</key>
+ <string>chromium_subp</string>
+ <key>CFBundleIdentifier</key>
+ <string>org.eclipse.swt.chromium_subp</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>chromium_subp</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>99.77.34.5</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>34.5</string>
+ <key>DTCompiler</key>
+ <string>com.apple.compilers.llvm.clang.1_0</string>
+ <key>DTSDKBuild</key>
+ <string>15E60</string>
+ <key>DTSDKName</key>
+ <string>macosx10.11</string>
+ <key>DTXcode</key>
+ <string>0731</string>
+ <key>DTXcodeBuild</key>
+ <string>7D1014</string>
+ <key>LSFileQuarantineEnabled</key>
+ <true/>
+ <key>LSMinimumSystemVersion</key>
+ <string>10.9.0</string>
+ <key>LSUIElement</key>
+ <string>1</string>
+ <key>NSSupportsAutomaticGraphicsSwitching</key>
+ <true/>
+</dict>
+</plist>
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium_subp-4936r6.app/Contents/PkgInfo b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium_subp-4936r6.app/Contents/PkgInfo
new file mode 100755
index 0000000..bd04210
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/chromium-3071/chromium_subp-4936r6.app/Contents/PkgInfo
@@ -0,0 +1 @@
+APPL????
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/pom.xml b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/pom.xml
new file mode 100644
index 0000000..c3919b1
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64/pom.xml
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2020 Equo
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License 2.0 which is available at
+ http://www.eclipse.org/legal/epl-2.0.
+
+ SPDX-License-Identifier: EPL-2.0
+
+ Contributors:
+ Guillermo Zunino, Equo - initial implementation
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>binaries-parent</artifactId>
+ <groupId>eclipse.platform.swt.binaries</groupId>
+ <version>4.17.0-SNAPSHOT</version>
+ <relativePath>../binaries-parent/</relativePath>
+ </parent>
+ <groupId>org.eclipse.swt</groupId>
+ <artifactId>org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64</artifactId>
+ <version>3.115.100-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+
+ <properties>
+ <os>macosx</os>
+ <ws>cocoa</ws>
+ <arch>x86_64</arch>
+ <buildid>${buildId}</buildid>
+ <skipRust>false</skipRust>
+ <skipJni>false</skipJni>
+ </properties>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>swtdownload</id>
+ <phase>package</phase>
+ <configuration>
+ <target>
+ <ant antfile="build.xml" target="swtdownload"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-compiler-plugin</artifactId>
+ <version>${tycho.version}</version>
+ <configuration>
+ <extraClasspathElements>
+ <dependency>
+ <groupId>org.eclipse.swt</groupId>
+ <artifactId>org.eclipse.swt.cocoa.macosx.x86_64</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </extraClasspathElements>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <!-- This has to be here. Profiles are not inheritable. -->
+ <profiles>
+ <profile>
+ <id>build-natives</id>
+ <activation>
+ <property>
+ <!-- This has to be hardcoded. Profiles are not allowed to use pom defined properties :-( -->
+ <name>native</name>
+ <value>cocoa.macosx.x86_64</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>natives-rust</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <ant antfile="build.xml" target="build_chromium"/>
+ </target>
+ <skip>${skipRust}</skip>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>natives-jni</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <property name="targets" value="chromium_install" />
+ <ant antfile="build.xml" target="build_libraries"/>
+ </target>
+ <skip>${skipJni}</skip>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
diff --git a/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/.project b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/.project
new file mode 100644
index 0000000..27cda76
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.swt.browser.chromium.gtk.linux.x86_64</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/META-INF/MANIFEST.MF b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..0aea0ad
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/META-INF/MANIFEST.MF
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Fragment-Host: org.eclipse.swt;bundle-version="[3.115.100,4.0.0)"
+Bundle-Name: Chromium SWT Widget for GTK
+Bundle-Vendor: Eclipse.org
+Bundle-SymbolicName: org.eclipse.swt.browser.chromium.gtk.linux.x86_64;singleton:=true
+Bundle-Version: 3.115.100.qualifier
+Bundle-ManifestVersion: 2
+Eclipse-PlatformFilter: (& (osgi.ws=gtk) (osgi.os=linux) (osgi.arch=x86_64))
+SWT-WS: gtk
+SWT-OS: linux
+SWT-Arch: x86_64
+Automatic-Module-Name: org.eclipse.swt.browser.chromium.gtk.linux.x86_64
diff --git a/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/about.html b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/about.html
new file mode 100644
index 0000000..4fb18a0
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/about.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>About</title>
+</head>
+<body lang="EN-US">
+ <h2>About This Content</h2>
+
+ <p>
+ March 16, 2020
+ </p>
+ <h3>License</h3>
+
+ <p>
+ The Eclipse Foundation makes available all content in this plug-in
+ ("Content"). Unless otherwise indicated below, the Content
+ is provided to you under the terms and conditions of the Eclipse
+ Public License Version 2.0 ("EPL"). A copy of the EPL is
+ available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
+ For purposes of the EPL, "Program" will mean the Content.
+ </p>
+
+ <p>
+ If you did not receive this Content directly from the Eclipse
+ Foundation, the Content is being redistributed by another party
+ ("Redistributor") and different terms and conditions may
+ apply to your use of any object code in the Content. Check the
+ Redistributor's license that was provided with the Content. If no such
+ license exists, contact the Redistributor. Unless otherwise indicated
+ below, the terms and conditions of the EPL still apply to any source
+ code in the Content and such source code may be obtained at <a
+ href="http://www.eclipse.org/">http://www.eclipse.org</a>.
+ </p>
+
+
+ <h3>Third Party Content</h3>
+ <p>The Content includes items that have been sourced from third
+ parties as set out below. If you did not receive this Content directly
+ from the Eclipse Foundation, the following is provided for
+ informational purposes only, and you should look to the
+ Redistributor's license for terms and conditions of use.</p>
+
+ <h4>Chromium Embedded Framework Binding</h4>
+ <p>The "Chromium Embedded Framework Binding" is a binding to the Chromium Embedded Framework C API. The Content may include any or all of the following files:</p>
+ <p>The following files in the plug-in JAR shall be defined as the native code portion of the Chromium Embedded Framework Binding:</p>
+ <ul>
+ <li>chromium-xxxx/libswt-chromium-gtk-xxxx.so (where "xxxx" is the version number)</li>
+ <li>chromium-xxxx/libchromium_swt_xxxx.so (where "xxxx" is the version number)</li>
+ <li>chromium-xxxx/chromium_supb-xxxx (where "xxxx" is the version number)</li>
+ </ul>
+ <p>The following files in both the plug-in JAR and the src.zip shall be defined respectively as the bytecode and source code portions of the Chromium Embedded Framework Binding:</p>
+ <ul>
+ <li>The contents of the directory org/eclipse/swt/internal/chromium</li>
+ </ul>
+ <p>The "Chromium Embedded Framework C API" is made available by the Chromium Embedded Framework open source project (<a href="https://bitbucket.org/chromiumembedded/cef/" target="_blank">https://bitbucket.org/chromiumembedded/cef/</a>). The Chromium Embedded Framework code was obtained under the terms of the BSD license. A copy of the BSD license is provided (<a href="about_files/cef-bsd.txt"target="_blank">cef-bsd.txt</a>) and is also available at <a href="https://bitbucket.org/chromiumembedded/cef/src/master/LICENSE.txt" target="_blank">https://bitbucket.org/chromiumembedded/cef/src/master/LICENSE.txt</a>. </p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/about_files/cef-bsd.txt b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/about_files/cef-bsd.txt
new file mode 100644
index 0000000..b55d613
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/about_files/cef-bsd.txt
@@ -0,0 +1,29 @@
+// Copyright (c) 2008-2020 Marshall A. Greenblatt. Portions Copyright (c)
+// 2006-2009 Google Inc. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/build.properties b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/build.properties
new file mode 100644
index 0000000..85a6e8c
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/build.properties
@@ -0,0 +1,17 @@
+################################################################################
+# Copyright (c) 2020 Equo
+#
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+# Guillermo Zunino, Equo - initial implementation
+################################################################################
+custom = true
+bin.includes = META-INF/,.,chromium-3071/,about_files/,about.html
+bin.excludes = library/
+source.. = src/
+src.includes = about.html,about_files/,chromium-3071/chromium.properties
diff --git a/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/build.xml b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/build.xml
new file mode 100644
index 0000000..2d361e6
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/build.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2020 Equo
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License 2.0 which is available at
+ http://www.eclipse.org/legal/epl-2.0.
+
+ SPDX-License-Identifier: EPL-2.0
+
+ Contributors:
+ Guillermo Zunino, Equo - initial implementation
+ -->
+<project name="org.eclipse.swt.browser.chromium.gtk.linux.x86_64" default="build.jars" basedir=".">
+
+ <property name="swt.ws" value="gtk" />
+ <property name="swt.os" value="linux" />
+ <property name="swt.arch" value="x86_64" />
+
+ <!-- These properties are used by eclipse when exporting as Deployable plugin and fragments -->
+ <property name="version.suffix" value="3.114.0" />
+
+ <condition property="plugindir" value="../../../eclipse.platform.swt/bundles/org.eclipse.swt.browser.chromium" else="${buildDirectory}/plugins/org.eclipse.swt.browser.chromium">
+ <available file="../../../eclipse.platform.swt/bundles/org.eclipse.swt" type="dir"/>
+ </condition>
+
+ <target name="@dot" depends="init" unless="@dot" description="Create jar: @dot.">
+ <path id="@dot.cp">
+ <fileset dir="../org.eclipse.swt.gtk.linux.x86_64/target">
+ <include name="*.jar"/>
+ </fileset>
+ </path>
+ <property name="dotcp" value="${toString:@dot.cp}"/>
+ <antcall target="org.eclipse.swt.fragment.@dot"/>
+ </target>
+
+ <target name="copy.gtk.src">
+ <property name="copy.src.dir" value="${temp.folder}/@dot.src"/>
+ <delete dir="${copy.src.dir}" quiet="true"/>
+ <copy todir="${copy.src.dir}" failonerror="true" overwrite="true">
+ <fileset dir="${plugindir}/common/" excludes="rust-library/"/>
+ <fileset dir="${plugindir}/gtk/"/>
+ </copy>
+ </target>
+
+ <import file="${plugindir}/buildChromium.xml"/>
+</project>
diff --git a/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/chromium-3071/chromium.properties b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/chromium-3071/chromium.properties
new file mode 100644
index 0000000..8a8edbe
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/chromium-3071/chromium.properties
@@ -0,0 +1,3 @@
+00=chromium-3071/chromium_subp-4936r6
+01=chromium-3071/libchromium_swt_4936r6.so
+02=chromium-3071/libswt-chromium-gtk-4936r6.so
diff --git a/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/pom.xml b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/pom.xml
new file mode 100644
index 0000000..6a66e7c
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64/pom.xml
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2020 Equo
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License 2.0 which is available at
+ http://www.eclipse.org/legal/epl-2.0.
+
+ SPDX-License-Identifier: EPL-2.0
+
+ Contributors:
+ Guillermo Zunino, Equo - initial implementation
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>binaries-parent</artifactId>
+ <groupId>eclipse.platform.swt.binaries</groupId>
+ <version>4.17.0-SNAPSHOT</version>
+ <relativePath>../binaries-parent/</relativePath>
+ </parent>
+ <groupId>org.eclipse.swt</groupId>
+ <artifactId>org.eclipse.swt.browser.chromium.gtk.linux.x86_64</artifactId>
+ <version>3.115.100-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+
+ <properties>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86_64</arch>
+ <buildid>${buildId}</buildid>
+ <skipRust>false</skipRust>
+ <skipJni>false</skipJni>
+ </properties>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>swtdownload</id>
+ <phase>package</phase>
+ <configuration>
+ <target>
+ <ant antfile="build.xml" target="swtdownload"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-compiler-plugin</artifactId>
+ <version>${tycho.version}</version>
+ <configuration>
+ <extraClasspathElements>
+ <dependency>
+ <groupId>org.eclipse.swt</groupId>
+ <artifactId>org.eclipse.swt.gtk.linux.x86_64</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </extraClasspathElements>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <!-- This has to be here. Profiles are not inheritable. -->
+ <profiles>
+ <profile>
+ <id>build-natives</id>
+ <activation>
+ <property>
+ <!-- This has to be hardcoded. Profiles are not allowed to use pom defined properties :-( -->
+ <name>native</name>
+ <value>gtk.linux.x86_64</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>natives-rust</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <property name="machine_gtk3" value="1"/>
+ <ant antfile="build.xml" target="build_chromium"/>
+ </target>
+ <skip>${skipRust}</skip>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>natives-jni</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <property name="machine_gtk3" value="1"/>
+ <property name="targets" value="chromium_install" />
+ <ant antfile="build.xml" target="build_libraries"/>
+ </target>
+ <skip>${skipJni}</skip>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
diff --git a/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/.project b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/.project
new file mode 100644
index 0000000..7c1d055
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.swt.browser.chromium.win32.win32.x86_64</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/META-INF/MANIFEST.MF b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..0ed0bf5
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/META-INF/MANIFEST.MF
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Fragment-Host: org.eclipse.swt;bundle-version="[3.115.100,4.0.0)"
+Bundle-Name: Chromium SWT Widget for Windows
+Bundle-Vendor: Eclipse.org
+Bundle-SymbolicName: org.eclipse.swt.browser.chromium.win32.win32.x86_64;singleton:=true
+Bundle-Version: 3.115.100.qualifier
+Bundle-ManifestVersion: 2
+Eclipse-PlatformFilter: (& (osgi.ws=win32) (osgi.os=win32) (osgi.arch=x86_64))
+SWT-WS: win32
+SWT-OS: win32
+SWT-Arch: x86_64
+Automatic-Module-Name: org.eclipse.swt.browser.chromium.win32.win32.x86_64
diff --git a/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/about.html b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/about.html
new file mode 100644
index 0000000..7f84b7b
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/about.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>About</title>
+</head>
+<body lang="EN-US">
+ <h2>About This Content</h2>
+
+ <p>
+ March 16, 2020
+ </p>
+ <h3>License</h3>
+
+ <p>
+ The Eclipse Foundation makes available all content in this plug-in
+ ("Content"). Unless otherwise indicated below, the Content
+ is provided to you under the terms and conditions of the Eclipse
+ Public License Version 2.0 ("EPL"). A copy of the EPL is
+ available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
+ For purposes of the EPL, "Program" will mean the Content.
+ </p>
+
+ <p>
+ If you did not receive this Content directly from the Eclipse
+ Foundation, the Content is being redistributed by another party
+ ("Redistributor") and different terms and conditions may
+ apply to your use of any object code in the Content. Check the
+ Redistributor's license that was provided with the Content. If no such
+ license exists, contact the Redistributor. Unless otherwise indicated
+ below, the terms and conditions of the EPL still apply to any source
+ code in the Content and such source code may be obtained at <a
+ href="http://www.eclipse.org/">http://www.eclipse.org</a>.
+ </p>
+
+
+ <h3>Third Party Content</h3>
+ <p>The Content includes items that have been sourced from third
+ parties as set out below. If you did not receive this Content directly
+ from the Eclipse Foundation, the following is provided for
+ informational purposes only, and you should look to the
+ Redistributor's license for terms and conditions of use.</p>
+
+ <h4>Chromium Embedded Framework Binding</h4>
+ <p>The "Chromium Embedded Framework Binding" is a binding to the Chromium Embedded Framework C API. The Content may include any or all of the following files:</p>
+ <p>The following files in the plug-in JAR shall be defined as the native code portion of the Chromium Embedded Framework Binding:</p>
+ <ul>
+ <li>chromium-xxxx/swt-chromium-win32-xxxx.dll (where "xxxx" is the version number)</li>
+ <li>chromium-xxxx/chromium_swt_xxxx.dll (where "xxxx" is the version number)</li>
+ <li>chromium-xxxx/chromium_supb-xxxx.exe (where "xxxx" is the version number)</li>
+ </ul>
+ <p>The following files in both the plug-in JAR and the src.zip shall be defined respectively as the bytecode and source code portions of the Chromium Embedded Framework Binding:</p>
+ <ul>
+ <li>The contents of the directory org/eclipse/swt/internal/chromium</li>
+ </ul>
+ <p>The "Chromium Embedded Framework C API" is made available by the Chromium Embedded Framework open source project (<a href="https://bitbucket.org/chromiumembedded/cef/" target="_blank">https://bitbucket.org/chromiumembedded/cef/</a>). The Chromium Embedded Framework code was obtained under the terms of the BSD license. A copy of the BSD license is provided (<a href="about_files/cef-bsd.txt"target="_blank">cef-bsd.txt</a>) and is also available at <a href="https://bitbucket.org/chromiumembedded/cef/src/master/LICENSE.txt" target="_blank">https://bitbucket.org/chromiumembedded/cef/src/master/LICENSE.txt</a>. </p>
+
+</body>
+</html>
diff --git a/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/about_files/cef-bsd.txt b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/about_files/cef-bsd.txt
new file mode 100644
index 0000000..b55d613
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/about_files/cef-bsd.txt
@@ -0,0 +1,29 @@
+// Copyright (c) 2008-2020 Marshall A. Greenblatt. Portions Copyright (c)
+// 2006-2009 Google Inc. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/build.properties b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/build.properties
new file mode 100644
index 0000000..85a6e8c
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/build.properties
@@ -0,0 +1,17 @@
+################################################################################
+# Copyright (c) 2020 Equo
+#
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+# Guillermo Zunino, Equo - initial implementation
+################################################################################
+custom = true
+bin.includes = META-INF/,.,chromium-3071/,about_files/,about.html
+bin.excludes = library/
+source.. = src/
+src.includes = about.html,about_files/,chromium-3071/chromium.properties
diff --git a/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/build.xml b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/build.xml
new file mode 100644
index 0000000..759a3ee
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/build.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2020 Equo
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License 2.0 which is available at
+ http://www.eclipse.org/legal/epl-2.0.
+
+ SPDX-License-Identifier: EPL-2.0
+
+ Contributors:
+ Guillermo Zunino, Equo - initial implementation
+ -->
+<project name="org.eclipse.swt.browser.chromium.win32.win32.x86_64" default="build.jars" basedir=".">
+
+ <property name="swt.ws" value="win32" />
+ <property name="swt.os" value="win32" />
+ <property name="swt.arch" value="x86_64" />
+ <property name="targets" value="x86_64 chromium_install"/>
+
+ <!-- These properties are used by eclipse when exporting as Deployable plugin and fragments -->
+ <property name="version.suffix" value="3.114.0" />
+
+ <condition property="plugindir" value="../../../eclipse.platform.swt/bundles/org.eclipse.swt.browser.chromium" else="${buildDirectory}/plugins/org.eclipse.swt.browser.chromium">
+ <available file="../../../eclipse.platform.swt/bundles/org.eclipse.swt" type="dir"/>
+ </condition>
+
+ <target name="@dot" depends="init" unless="@dot" description="Create jar: @dot.">
+ <path id="@dot.cp">
+ <fileset dir="../org.eclipse.swt.win32.win32.x86_64/target">
+ <include name="*.jar"/>
+ </fileset>
+ </path>
+ <property name="dotcp" value="${toString:@dot.cp}"/>
+ <antcall target="org.eclipse.swt.fragment.@dot"/>
+ </target>
+
+ <target name="copy.win32.src">
+ <property name="copy.src.dir" value="${temp.folder}/@dot.src"/>
+ <delete dir="${copy.src.dir}" quiet="true"/>
+ <copy todir="${copy.src.dir}" failonerror="true" overwrite="true">
+ <fileset dir="${plugindir}/common/" excludes="rust-library/"/>
+ <fileset dir="${plugindir}/win32/"/>
+ </copy>
+ </target>
+
+ <target name="build_chromium" depends="init_fragment,get_version">
+ <property name="chromium_subp" value="chromium_subp-${swt_version}.exe"/>
+ <property name="chromium_subp_from" value="chromium_subp.exe"/>
+ <antcall target="chromiumbuild.build_chromium"/>
+ </target>
+
+ <import file="${plugindir}/buildChromium.xml"/>
+</project>
diff --git a/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/chromium-3071/chromium.properties b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/chromium-3071/chromium.properties
new file mode 100644
index 0000000..a577808
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/chromium-3071/chromium.properties
@@ -0,0 +1,3 @@
+00=chromium-3071/chromium_subp-4936r6.exe
+01=chromium-3071/chromium_swt_4936r6.dll
+02=chromium-3071/swt-chromium-win32-4936r6.dll
diff --git a/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/pom.xml b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/pom.xml
new file mode 100644
index 0000000..da397c9
--- /dev/null
+++ b/bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64/pom.xml
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2020 Equo
+
+ This program and the accompanying materials are made available under the
+ terms of the Eclipse Public License 2.0 which is available at
+ http://www.eclipse.org/legal/epl-2.0.
+
+ SPDX-License-Identifier: EPL-2.0
+
+ Contributors:
+ Guillermo Zunino, Equo - initial implementation
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>binaries-parent</artifactId>
+ <groupId>eclipse.platform.swt.binaries</groupId>
+ <version>4.17.0-SNAPSHOT</version>
+ <relativePath>../binaries-parent/</relativePath>
+ </parent>
+ <groupId>org.eclipse.swt</groupId>
+ <artifactId>org.eclipse.swt.browser.chromium.win32.win32.x86_64</artifactId>
+ <version>3.115.100-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+
+ <properties>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86_64</arch>
+ <buildid>${buildId}</buildid>
+ <skipRust>false</skipRust>
+ <skipJni>false</skipJni>
+ </properties>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>swtdownload</id>
+ <phase>package</phase>
+ <configuration>
+ <target>
+ <ant antfile="build.xml" target="swtdownload"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-compiler-plugin</artifactId>
+ <version>${tycho.version}</version>
+ <configuration>
+ <extraClasspathElements>
+ <dependency>
+ <groupId>org.eclipse.swt</groupId>
+ <artifactId>org.eclipse.swt.win32.win32.x86_64</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </extraClasspathElements>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <!-- This has to be here. Profiles are not inheritable. -->
+ <profiles>
+ <profile>
+ <id>build-natives</id>
+ <activation>
+ <property>
+ <!-- This has to be hardcoded. Profiles are not allowed to use pom defined properties :-( -->
+ <name>native</name>
+ <value>win32.win32.x86_64</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>natives-rust</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <ant antfile="build.xml" target="build_chromium"/>
+ </target>
+ <skip>${skipRust}</skip>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>natives-jni</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <ant antfile="build.xml" target="build_libraries"/>
+ </target>
+ <skip>${skipJni}</skip>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
diff --git a/bundles/org.eclipse.swt.cocoa.macosx.x86_64/META-INF/MANIFEST.MF b/bundles/org.eclipse.swt.cocoa.macosx.x86_64/META-INF/MANIFEST.MF
index bdf63cb..6ef1e91 100644
--- a/bundles/org.eclipse.swt.cocoa.macosx.x86_64/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.swt.cocoa.macosx.x86_64/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
Bundle-Name: %fragmentName
Bundle-Vendor: %providerName
Bundle-SymbolicName: org.eclipse.swt.cocoa.macosx.x86_64; singleton:=true
-Bundle-Version: 3.115.0.qualifier
+Bundle-Version: 3.115.100.qualifier
Bundle-ManifestVersion: 2
Bundle-Localization: fragment
Export-Package:
diff --git a/bundles/org.eclipse.swt.cocoa.macosx.x86_64/pom.xml b/bundles/org.eclipse.swt.cocoa.macosx.x86_64/pom.xml
index 9bec722..fc621f8 100644
--- a/bundles/org.eclipse.swt.cocoa.macosx.x86_64/pom.xml
+++ b/bundles/org.eclipse.swt.cocoa.macosx.x86_64/pom.xml
@@ -21,7 +21,7 @@
</parent>
<groupId>org.eclipse.swt</groupId>
<artifactId>org.eclipse.swt.cocoa.macosx.x86_64</artifactId>
- <version>3.115.0-SNAPSHOT</version>
+ <version>3.115.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<properties>
diff --git a/bundles/org.eclipse.swt.gtk.linux.ppc64le/META-INF/MANIFEST.MF b/bundles/org.eclipse.swt.gtk.linux.ppc64le/META-INF/MANIFEST.MF
index 1af11cc..5926226 100644
--- a/bundles/org.eclipse.swt.gtk.linux.ppc64le/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.swt.gtk.linux.ppc64le/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
Bundle-Name: %fragmentName
Bundle-Vendor: %providerName
Bundle-SymbolicName: org.eclipse.swt.gtk.linux.ppc64le;singleton:=true
-Bundle-Version: 3.115.0.qualifier
+Bundle-Version: 3.115.100.qualifier
Bundle-ManifestVersion: 2
Bundle-Localization: fragment
Export-Package:
diff --git a/bundles/org.eclipse.swt.gtk.linux.ppc64le/pom.xml b/bundles/org.eclipse.swt.gtk.linux.ppc64le/pom.xml
index e568cdd..becb802 100644
--- a/bundles/org.eclipse.swt.gtk.linux.ppc64le/pom.xml
+++ b/bundles/org.eclipse.swt.gtk.linux.ppc64le/pom.xml
@@ -21,7 +21,7 @@
</parent>
<groupId>org.eclipse.swt</groupId>
<artifactId>org.eclipse.swt.gtk.linux.ppc64le</artifactId>
- <version>3.115.0-SNAPSHOT</version>
+ <version>3.115.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<properties>
diff --git a/bundles/org.eclipse.swt.gtk.linux.x86_64/META-INF/MANIFEST.MF b/bundles/org.eclipse.swt.gtk.linux.x86_64/META-INF/MANIFEST.MF
index 8bf5fdb..84de05d 100644
--- a/bundles/org.eclipse.swt.gtk.linux.x86_64/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.swt.gtk.linux.x86_64/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
Bundle-Name: %fragmentName
Bundle-Vendor: %providerName
Bundle-SymbolicName: org.eclipse.swt.gtk.linux.x86_64; singleton:=true
-Bundle-Version: 3.115.0.qualifier
+Bundle-Version: 3.115.100.qualifier
Bundle-ManifestVersion: 2
Bundle-Localization: fragment
Export-Package:
diff --git a/bundles/org.eclipse.swt.gtk.linux.x86_64/pom.xml b/bundles/org.eclipse.swt.gtk.linux.x86_64/pom.xml
index 01798be..e75e590 100644
--- a/bundles/org.eclipse.swt.gtk.linux.x86_64/pom.xml
+++ b/bundles/org.eclipse.swt.gtk.linux.x86_64/pom.xml
@@ -21,7 +21,7 @@
</parent>
<groupId>org.eclipse.swt</groupId>
<artifactId>org.eclipse.swt.gtk.linux.x86_64</artifactId>
- <version>3.115.0-SNAPSHOT</version>
+ <version>3.115.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<properties>
diff --git a/bundles/org.eclipse.swt.win32.win32.x86_64/META-INF/MANIFEST.MF b/bundles/org.eclipse.swt.win32.win32.x86_64/META-INF/MANIFEST.MF
index d07f8f5..ec108b1 100644
--- a/bundles/org.eclipse.swt.win32.win32.x86_64/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.swt.win32.win32.x86_64/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
Bundle-Name: %fragmentName
Bundle-Vendor: %providerName
Bundle-SymbolicName: org.eclipse.swt.win32.win32.x86_64; singleton:=true
-Bundle-Version: 3.115.0.qualifier
+Bundle-Version: 3.115.100.qualifier
Bundle-ManifestVersion: 2
Bundle-Localization: fragment
Export-Package:
diff --git a/bundles/org.eclipse.swt.win32.win32.x86_64/pom.xml b/bundles/org.eclipse.swt.win32.win32.x86_64/pom.xml
index 92e5bad..e09bf0d 100644
--- a/bundles/org.eclipse.swt.win32.win32.x86_64/pom.xml
+++ b/bundles/org.eclipse.swt.win32.win32.x86_64/pom.xml
@@ -21,7 +21,7 @@
</parent>
<groupId>org.eclipse.swt</groupId>
<artifactId>org.eclipse.swt.win32.win32.x86_64</artifactId>
- <version>3.115.0-SNAPSHOT</version>
+ <version>3.115.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<properties>
diff --git a/pom.xml b/pom.xml
index c3b8943..331e15f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -57,6 +57,9 @@
<module>bundles/org.eclipse.swt.gtk.linux.ppc64le</module>
<module>bundles/org.eclipse.swt.gtk.linux.x86_64</module>
<module>bundles/org.eclipse.swt.win32.win32.x86_64</module>
+ <module>bundles/org.eclipse.swt.browser.chromium.cocoa.macosx.x86_64</module>
+ <module>bundles/org.eclipse.swt.browser.chromium.gtk.linux.x86_64</module>
+ <module>bundles/org.eclipse.swt.browser.chromium.win32.win32.x86_64</module>
</modules>
<build>