Repository: couchdb-ci Updated Branches: refs/heads/master 0067f12a0 -> b19c41169
Compile SpiderMonkey 1.8.5 everywhere with --disable-methodjit Fixes apache/couchdb#551 by addressing the one segmentation violation we're sure happens, which involves the JIT. A replacement for SM 1.8.5 can't come soon enough. Project: http://git-wip-us.apache.org/repos/asf/couchdb-ci/repo Commit: http://git-wip-us.apache.org/repos/asf/couchdb-ci/commit/b19c4116 Tree: http://git-wip-us.apache.org/repos/asf/couchdb-ci/tree/b19c4116 Diff: http://git-wip-us.apache.org/repos/asf/couchdb-ci/diff/b19c4116 Branch: refs/heads/master Commit: b19c41169029ceb3489a12a704d821267447e801 Parents: 0067f12 Author: Joan Touzet <[email protected]> Authored: Wed Jun 28 15:42:52 2017 -0700 Committer: Joan Touzet <[email protected]> Committed: Wed Jun 28 15:42:52 2017 -0700 ---------------------------------------------------------------------- ansible/centos-6-base.yml | 1 + ansible/centos-7-base.yml | 1 + ansible/debian-8-base.yml | 1 + .../roles/dependencies-centos/tasks/main.yml | 9 ++--- .../dependencies-centos/tasks/spidermonkey.yml | 38 -------------------- .../roles/dependencies-debian/tasks/main.yml | 6 ++-- ansible/roles/spidermonkey/tasks/main.yml | 38 ++++++++++++++++++++ ansible/ubuntu-12.04-base.yml | 1 + ansible/ubuntu-14.04-base.yml | 1 + ansible/ubuntu-16.04-base.yml | 1 + 10 files changed, 53 insertions(+), 44 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/centos-6-base.yml ---------------------------------------------------------------------- diff --git a/ansible/centos-6-base.yml b/ansible/centos-6-base.yml index 1fdaa03..6b93f03 100644 --- a/ansible/centos-6-base.yml +++ b/ansible/centos-6-base.yml @@ -23,3 +23,4 @@ - geerlingguy.repo-epel - dependencies-centos - common + - spidermonkey http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/centos-7-base.yml ---------------------------------------------------------------------- diff --git a/ansible/centos-7-base.yml b/ansible/centos-7-base.yml index 9633ec4..a58864e 100644 --- a/ansible/centos-7-base.yml +++ b/ansible/centos-7-base.yml @@ -23,3 +23,4 @@ - geerlingguy.repo-epel - dependencies-centos - common + - spidermonkey http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/debian-8-base.yml ---------------------------------------------------------------------- diff --git a/ansible/debian-8-base.yml b/ansible/debian-8-base.yml index d99f45e..a5652f8 100644 --- a/ansible/debian-8-base.yml +++ b/ansible/debian-8-base.yml @@ -23,3 +23,4 @@ - dependencies-debian - lintian-debian - common + - spidermonkey http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/roles/dependencies-centos/tasks/main.yml ---------------------------------------------------------------------- diff --git a/ansible/roles/dependencies-centos/tasks/main.yml b/ansible/roles/dependencies-centos/tasks/main.yml index 9ea3393..3932be7 100644 --- a/ansible/roles/dependencies-centos/tasks/main.yml +++ b/ansible/roles/dependencies-centos/tasks/main.yml @@ -34,10 +34,14 @@ yum: name={{item}} state=present with_items: - autoconf + - autoconf213 - automake - curl-devel - libicu-devel - libtool + - ncurses-devel + - nspr-devel + - zip # special case since autoconf-archive on CentOS 6 is not in EPEL - name: install autoconf-archive @@ -57,9 +61,6 @@ name: nodejs state: present -# download, compile and install Spidermonkey -- include: spidermonkey.yml - # download and install shunit2 - include: shunit.yml @@ -98,7 +99,7 @@ command: "/usr/bin/python3.4 /tmp/get-pip.py" - name: install up to date version of sphinx via pip - shell: pip install sphinx==1.5.3 + shell: pip install docutils==0.13.1 sphinx==1.5.3 - name: dependencies for packages yum: name={{item}} state=present http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/roles/dependencies-centos/tasks/spidermonkey.yml ---------------------------------------------------------------------- diff --git a/ansible/roles/dependencies-centos/tasks/spidermonkey.yml b/ansible/roles/dependencies-centos/tasks/spidermonkey.yml deleted file mode 100644 index 8bfca73..0000000 --- a/ansible/roles/dependencies-centos/tasks/spidermonkey.yml +++ /dev/null @@ -1,38 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -- name: download Spidermonkey 1.8.5 - get_url: - url: "http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz" - dest: /tmp/js185-1.0.0.tar.gz -- name: unpack Spidermonkey 1.8.5 - unarchive: - src: /tmp/js185-1.0.0.tar.gz - dest: /opt - copy: no -- name: configure Spidermonkey 1.8.5 - command: ./configure --prefix=/usr - args: - chdir: /opt/js-1.8.5/js/src -- name: make Spidermonkey 1.8.5 - command: make - args: - chdir: /opt/js-1.8.5/js/src -- name: make install Spidermonkey 1.8.5 - command: make install - args: - chdir: /opt/js-1.8.5/js/src http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/roles/dependencies-debian/tasks/main.yml ---------------------------------------------------------------------- diff --git a/ansible/roles/dependencies-debian/tasks/main.yml b/ansible/roles/dependencies-debian/tasks/main.yml index deda609..6555e47 100644 --- a/ansible/roles/dependencies-debian/tasks/main.yml +++ b/ansible/roles/dependencies-debian/tasks/main.yml @@ -33,7 +33,9 @@ - pkg-config - python - python-pip + - python-requests - sudo + - zip # dependencies for make couch, except erlang - name: install packages required to build CouchDB @@ -43,7 +45,7 @@ - ca-certificates - libcurl4-openssl-dev - libicu-dev - - libmozjs185-dev + - libnspr4-dev - shunit2 # required for make docs @@ -56,7 +58,7 @@ # Fix broken sphinx on ubuntu 12.04 only # Hack, but prevents needing a unique debian/ dir for this dist - name: install up to date version of sphinx via pip - shell: pip install sphinx==1.5.3 + shell: pip install docutils==0.13.1 sphinx==1.5.3 when: ansible_distribution == "Ubuntu" and ansible_distribution_version == "12.04" # dependencies for Debian/Ubuntu package building http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/roles/spidermonkey/tasks/main.yml ---------------------------------------------------------------------- diff --git a/ansible/roles/spidermonkey/tasks/main.yml b/ansible/roles/spidermonkey/tasks/main.yml new file mode 100644 index 0000000..34ed1e1 --- /dev/null +++ b/ansible/roles/spidermonkey/tasks/main.yml @@ -0,0 +1,38 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +- name: download Spidermonkey 1.8.5 + get_url: + url: "http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz" + dest: /tmp/js185-1.0.0.tar.gz +- name: unpack Spidermonkey 1.8.5 + unarchive: + src: /tmp/js185-1.0.0.tar.gz + dest: /opt + copy: no +- name: configure Spidermonkey 1.8.5 + command: ./configure --prefix=/usr --with-system-nspr --disable-tests --disable-strip --enable-ctypes --enable-threadsafe --disable-methodjit + args: + chdir: /opt/js-1.8.5/js/src +- name: make Spidermonkey 1.8.5 + command: make + args: + chdir: /opt/js-1.8.5/js/src +- name: make install Spidermonkey 1.8.5 + command: make install + args: + chdir: /opt/js-1.8.5/js/src http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/ubuntu-12.04-base.yml ---------------------------------------------------------------------- diff --git a/ansible/ubuntu-12.04-base.yml b/ansible/ubuntu-12.04-base.yml index f3a8615..f2f5d60 100644 --- a/ansible/ubuntu-12.04-base.yml +++ b/ansible/ubuntu-12.04-base.yml @@ -23,3 +23,4 @@ - dependencies-debian - lintian-ubuntu - common + - spidermonkey http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/ubuntu-14.04-base.yml ---------------------------------------------------------------------- diff --git a/ansible/ubuntu-14.04-base.yml b/ansible/ubuntu-14.04-base.yml index b2a0f48..c176659 100644 --- a/ansible/ubuntu-14.04-base.yml +++ b/ansible/ubuntu-14.04-base.yml @@ -23,3 +23,4 @@ - dependencies-debian - lintian-ubuntu - common + - spidermonkey http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/b19c4116/ansible/ubuntu-16.04-base.yml ---------------------------------------------------------------------- diff --git a/ansible/ubuntu-16.04-base.yml b/ansible/ubuntu-16.04-base.yml index c0406de..1e010a2 100644 --- a/ansible/ubuntu-16.04-base.yml +++ b/ansible/ubuntu-16.04-base.yml @@ -23,3 +23,4 @@ - dependencies-debian - lintian-ubuntu - common + - spidermonkey
