diff --git a/.arcconfig b/.arcconfig --- a/.arcconfig +++ b/.arcconfig @@ -1,5 +1,5 @@ { - "phabricator.uri" : "https://phabricator.services.mozilla.com/", + "phabricator.uri" : "https://phabricator-dev.allizom.org/", "repository.callsign": "MOZILLACENTRAL", "history.immutable": false } diff --git a/build/build-infer/build-infer.py b/build/build-infer/build-infer.py --- a/build/build-infer/build-infer.py +++ b/build/build-infer/build-infer.py @@ -105,13 +105,28 @@ git_commands = [['clean', '-f'], ['reset', '--hard']] for command in git_commands: run_in(source_dir, ['git']+command) for p in config.get('patches', []): run_in(source_dir, ['git', 'apply', os.path.join(dir_path, p)]) + # configure opam + run_in(source_dir, ['opam', 'init', '--no-setup', '--disable-sandboxing']) # build infer run_in(source_dir, ['./build-infer.sh', 'java'], extra_env={'NO_CMAKE_STRIP': '1'}) + package_name = 'infer' + infer_package = os.path.join(os.getcwd(), package_name) + # We need to create a package with all of the depended libraries injected in it + run_in(source_dir, ['make', 'install-with-libs', 'BUILD_MODE=opt', + 'PATCHELF=patchelf', 'DESTDIR={}'.format(infer_package), + 'libdir_relative_to_bindir=../lib']) + + + infer_package_with_pref = os.path.join(infer_package, 'usr') if not args.skip_tar: + os.rename(os.path.join(infer_package_with_pref, 'local'), + os.path.join(infer_package_with_pref, 'infer')) build_tar_package('tar', '%s.tar.xz' % (package_name), - source_dir, [os.path.join('infer', 'bin'), - os.path.join('infer', 'lib')]) + infer_package_with_pref, + [os.path.join('infer', 'bin'), + os.path.join('infer', 'lib'), + os.path.join('infer', 'share')]) diff --git a/build/build-infer/infer-linux64.json b/build/build-infer/infer-linux64.json --- a/build/build-infer/infer-linux64.json +++ b/build/build-infer/infer-linux64.json @@ -1,5 +1,5 @@ { "infer_repo": "https://github.com/facebook/infer", - "infer_revision": "14aa1edbf532675f48ba0a35a2e55d07b79b1f3c", + "infer_revision": "99464c01da5809e7159ed1a75ef10f60d34506a4", "patches": [] } diff --git a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java --- a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java +++ b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java @@ -352,18 +352,29 @@ view = super.onCreateView(name, context, attrs); } return view; } + String getStringFromIdx(int idx) { + if (idx != 0) { + return "Some String"; + } + return null; + } + @Override @SuppressWarnings("fallthrough") public void onTabChanged(Tab tab, TabEvents msg, String data) { if (!mInitialized) { super.onTabChanged(tab, msg, data); return; } + String myString = getStringFromIdx(0); + + Log.d(LOGTAG, "BrowserApp.onTabChanged myString size: " + myString.length()); + if (tab == null) { // Only RESTORED is allowed a null tab: it's the only event that // isn't tied to a specific tab. if (msg != Tabs.TabEvents.RESTORED) { throw new IllegalArgumentException("onTabChanged:" + msg + " must specify a tab."); diff --git a/taskcluster/ci/docker-image/kind.yml b/taskcluster/ci/docker-image/kind.yml --- a/taskcluster/ci/docker-image/kind.yml +++ b/taskcluster/ci/docker-image/kind.yml @@ -198,11 +198,11 @@ parent: debian10-raw packages: - deb10-python-zstandard static-analysis-build: symbol: I(static-analysis-build) - parent: android-build + parent: debian9-base mingw32-build: symbol: I(mingw) parent: debian9-base index-task: symbol: I(idx) diff --git a/taskcluster/docker/static-analysis-build/Dockerfile b/taskcluster/docker/static-analysis-build/Dockerfile --- a/taskcluster/docker/static-analysis-build/Dockerfile +++ b/taskcluster/docker/static-analysis-build/Dockerfile @@ -19,17 +19,17 @@ bison \ bzip2 \ cmake \ flex \ curl \ - opam \ libsqlite3-dev \ file \ gawk \ gcc-multilib \ gnupg \ libc6-dev \ + libmpfr-dev \ nasm \ openjdk-8-jdk-headless \ pkg-config \ patch \ p7zip-full \ @@ -52,12 +52,18 @@ linux-libc-dev \ libdbus-glib-1-dev \ libfontconfig1-dev \ libfreetype6-dev \ libgconf2-dev \ + libgmp-dev \ libgtk-3-dev \ libgtk2.0-dev \ libpango1.0-dev \ libpulse-dev \ libx11-xcb-dev \ libxt-dev \ - lib32z1 + lib32z1 \ + patchelf + +# Install opam 2 +RUN curl -sL https://github.com/ocaml/opam/releases/download/2.0.3/opam-2.0.3-x86_64-linux > /usr/bin/opam && \ + chmod +x /usr/bin/opam