You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by ro...@apache.org on 2023/05/21 12:12:00 UTC
[couchdb] branch align-makefiles updated (f009a9bfe -> 76bdc6770)
This is an automated email from the ASF dual-hosted git repository.
ronny pushed a change to branch align-makefiles
in repository https://gitbox.apache.org/repos/asf/couchdb.git
discard f009a9bfe Synchronize Makefile and Makefile.win
new 76bdc6770 Synchronize Makefile and Makefile.win
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (f009a9bfe)
\
N -- N -- N refs/heads/align-makefiles (76bdc6770)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
configure.ps1 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[couchdb] 01/01: Synchronize Makefile and Makefile.win
Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ronny pushed a commit to branch align-makefiles
in repository https://gitbox.apache.org/repos/asf/couchdb.git
commit 76bdc677067aaa613116ee882573136d172cfad8
Author: Ronny Berndt <ro...@apache.org>
AuthorDate: Sun May 21 13:35:50 2023 +0200
Synchronize Makefile and Makefile.win
Synchronize both makefiles and add commands
for building nouveau for Windows
---
Makefile | 7 +++---
Makefile.win | 70 +++++++++++++++++++++++++++++++++++++++++++++++++----------
configure | 1 +
configure.ps1 | 7 +++++-
4 files changed, 69 insertions(+), 16 deletions(-)
diff --git a/Makefile b/Makefile
index 183afd5e4..ecd3e76c3 100644
--- a/Makefile
+++ b/Makefile
@@ -418,14 +418,12 @@ ifeq ($(with_fauxton), 1)
endif
ifeq ($(with_docs), 1)
-ifeq ($(IN_RELEASE), true)
@mkdir -p rel/couchdb/share/www/docs/
@mkdir -p rel/couchdb/share/docs/
+ifeq ($(IN_RELEASE), true)
@cp -R share/docs/html/* rel/couchdb/share/www/docs/
@cp share/docs/man/apachecouchdb.1 rel/couchdb/share/docs/couchdb.1
else
- @mkdir -p rel/couchdb/share/www/docs/
- @mkdir -p rel/couchdb/share/docs/
@cp -R src/docs/build/html/ rel/couchdb/share/www/docs
@cp src/docs/build/man/apachecouchdb.1 rel/couchdb/share/docs/couchdb.1
endif
@@ -546,13 +544,14 @@ derived:
################################################################################
.PHONY: nouveau
-# Build nouveau
+# target: nouveau - Build nouveau
nouveau:
ifeq ($(with_nouveau), 1)
@cd nouveau && ./gradlew build -x test
endif
.PHONY: nouveau-test
+# target: nouveau-test - Run nouveau tests
nouveau-test: nouveau-test-gradle nouveau-test-elixir
.PHONY: nouveau-test-gradle
diff --git a/Makefile.win b/Makefile.win
index 418a14515..542b7a7d8 100644
--- a/Makefile.win
+++ b/Makefile.win
@@ -78,7 +78,7 @@ DESTDIR=
# Rebar options
apps=
-skip_deps=folsom,meck,mochiweb,triq,proper,snappy,bcrypt,hyper,ibrowse,local
+skip_deps=folsom,meck,mochiweb,triq,proper,snappy,bcrypt,hyper,ibrowse
suites=
tests=
@@ -98,7 +98,7 @@ TEST_OPTS=-c startup_jitter=0 -c default_security=admin_local
.PHONY: all
# target: all - Build everything
-all: couch fauxton docs
+all: couch fauxton docs nouveau
.PHONY: help
@@ -140,9 +140,11 @@ fauxton: share\www
.PHONY: check
# target: check - Test everything
check: all
+ @$(MAKE) exunit
@$(MAKE) eunit
@$(MAKE) mango-test
@$(MAKE) elixir-suite
+ @$(MAKE) nouveau-test
ifdef apps
subdirs = $(apps)
@@ -167,8 +169,9 @@ exunit: export MIX_ENV=test
exunit: export ERL_LIBS = $(shell echo %cd%)/src
exunit: export ERL_AFLAGS = -config $(shell echo "%cd%")/rel/files/eunit.config
exunit: export COUCHDB_QUERY_SERVER_JAVASCRIPT = $(shell echo %cd%)/bin/couchjs $(shell echo %cd%)/share/server/main.js
-exunit: couch elixir-init setup-eunit elixir-check-formatted elixir-credo
- @mix test --cover --trace $(EXUNIT_OPTS)
+exunit: export COUCHDB_TEST_ADMIN_PARTY_OVERRIDE=1
+exunit: couch elixir-init setup-eunit
+ @mix test --trace $(EXUNIT_OPTS)
setup-eunit: export BUILDDIR = $(shell echo %cd%)
setup-eunit: export ERL_AFLAGS = -config $(shell echo "%cd%")/rel/files/eunit.config
@@ -215,26 +218,27 @@ python-black-update: .venv/bin/black
.PHONY: elixir
elixir: export MIX_ENV=integration
elixir: export COUCHDB_TEST_ADMIN_PARTY_OVERRIDE=1
-elixir: elixir-init elixir-check-formatted elixir-credo devclean
- @dev\run $(TEST_OPTS) -a adm:pass -n 1 --enable-erlang-views \
+elixir: elixir-init devclean
+ @dev\run $(TEST_OPTS) -a adm:pass -n 1 \
+ --enable-erlang-views \
--locald-config test/elixir/test/config/test-config.ini \
--no-eval 'mix test --trace --exclude without_quorum_test --exclude with_quorum_test $(EXUNIT_OPTS)'
.PHONY: elixir-init
-elixir-init: MIX_ENV=test
+elixir-init: MIX_ENV=integration
elixir-init: config.erl
@mix local.rebar --force && mix local.hex --force && mix deps.get
.PHONY: elixir-cluster-without-quorum
elixir-cluster-without-quorum: export MIX_ENV=integration
-elixir-cluster-without-quorum: elixir-init elixir-check-formatted elixir-credo devclean
+elixir-cluster-without-quorum: elixir-init devclean
@dev\run -n 3 -q -a adm:pass \
--degrade-cluster 2 \
--no-eval 'mix test --trace --only without_quorum_test $(EXUNIT_OPTS)'
.PHONY: elixir-cluster-with-quorum
elixir-cluster-with-quorum: export MIX_ENV=integration
-elixir-cluster-with-quorum: elixir-init elixir-check-formatted elixir-credo devclean
+elixir-cluster-with-quorum: elixir-init devclean
@dev\run -n 3 -q -a adm:pass \
--degrade-cluster 1 \
--no-eval 'mix test --trace --only with_quorum_test $(EXUNIT_OPTS)'
@@ -269,7 +273,11 @@ elixir-source-checks: elixir-init
.PHONY: build-report
# target: build-report - Generate a build report
build-report:
- @$(PYTHON) build-aux/show-test-results.py --suites=10 --tests=10 > test-results.log
+ @$(PYTHON) build-aux/show-test-results.py --suites=10 --tests=10 > test-results.log || true
+ cat .\dev\logs\node1.log || true
+ cat .\dev\logs\nouveau.log || true
+ cat .\tmp\couch.log || true
+ cat test-results.log || true
.PHONY: check-qs
# target: check-qs - Run query server tests (ruby and rspec required!)
@@ -293,7 +301,7 @@ list-eunit-suites:
mango-test: export COUCHDB_TEST_ADMIN_PARTY_OVERRIDE=1
mango-test: devclean all
@cd src\mango && \
- python.exe -m venv .venv && \
+ @$(PYTHON) -m venv .venv && \
.venv\Scripts\pip.exe install -r requirements.txt
@cd src\mango && \
..\..\dev\run $(TEST_OPTS) \
@@ -383,6 +391,12 @@ else
endif
endif
+ifeq ($(with_nouveau), 1)
+ -@mkdir -p rel\couchdb\nouveau
+ @cp nouveau\build\libs\server-*-dist.jar rel\couchdb\nouveau\
+ @cp nouveau\nouveau.yaml rel\couchdb\nouveau\
+endif
+
@echo ... done
@echo .
@echo You can now copy the rel\couchdb directory anywhere on your system.
@@ -423,6 +437,9 @@ clean:
-@rmdir /s/q src\mango\.venv
-@del /f/q src\couch\priv\couch_js\config.h
-@del /f/q dev\boot_node.beam dev\pbkdf2.pyc log\crash.log
+ifeq ($(with_nouveau), 1)
+ @cd nouveau && ./gradlew clean
+endif
.PHONY: distclean
@@ -489,3 +506,34 @@ derived:
@echo "ON_TAG: $(ON_TAG)"
@echo "REL_TAG: $(REL_TAG)"
@echo "SUB_VSN: $(SUB_VSN)"
+
+################################################################################
+# Nouveau
+################################################################################
+
+.PHONY: nouveau
+# target: nouveau - Build nouveau
+nouveau:
+ifeq ($(with_nouveau), 1)
+ @cd nouveau && ./gradlew build -x test
+endif
+
+.PHONY: nouveau-test
+# target: nouveau-test - Run nouveau tests
+nouveau-test: nouveau-test-gradle nouveau-test-elixir
+
+.PHONY: nouveau-test-gradle
+nouveau-test-gradle: couch nouveau
+ifeq ($(with_nouveau), 1)
+ @cd nouveau && ./gradlew test
+endif
+
+.PHONY: nouveau-test-elixir
+nouveau-test-elixir: export MIX_ENV=integration
+nouveau-test-elixir: elixir-init devclean
+nouveau-test-elixir: couch nouveau
+ifeq ($(with_nouveau), 1)
+ @dev/run -n 1 -q -a adm:pass --with-nouveau \
+ --locald-config test/config/test-config.ini \
+ --no-eval 'mix test --trace --include test/elixir/test/config/nouveau.elixir'
+endif
diff --git a/configure b/configure
index 8b1e43d6f..7e4526581 100755
--- a/configure
+++ b/configure
@@ -60,6 +60,7 @@ Options:
--enable-nouveau enable the new experimental search module
--erlang-md5 use erlang for md5 hash operations
--dev alias for --disable-docs --disable-fauxton
+ --dev-with-nouveau alias for --disable-docs --disable-fauxton --enable-nouveau
--spidermonkey-version VSN specify the version of SpiderMonkey to use (defaults to $SM_VSN)
--skip-deps do not update erlang dependencies
--rebar=PATH use rebar by specified path (version >=2.6.0 && <3.0 required)
diff --git a/configure.ps1 b/configure.ps1
index 576430e4e..14c288da6 100644
--- a/configure.ps1
+++ b/configure.ps1
@@ -7,6 +7,7 @@
-DisableFauxton request build process skip building Fauxton (default false)
-DisableDocs request build process skip building documentation (default false)
+ -EnableNouveau enable the new experiemtal search module (default false)
-SkipDeps do not update Erlang dependencies (default false)
-CouchDBUser USER set the username to run as (defaults to current user)
-SpiderMonkeyVersion VSN select the version of SpiderMonkey to use (default 91)
@@ -43,6 +44,7 @@ Param(
[switch]$Test = $false,
[switch]$DisableFauxton = $false, # do not build Fauxton
[switch]$DisableDocs = $false, # do not build any documentation or manpages
+ [switch]$EnableNouveau = $false, # dont use new search module by default
[switch]$SkipDeps = $false, # do not update erlang dependencies
[switch]$DisableProper = $false, # a compilation pragma. proper is a kind of automated test suite
[switch]$EnableErlangMD5 = $false, # don't use Erlang for md5 hash operations by default
@@ -127,6 +129,7 @@ $InstallDir="$LibDir\couchdb"
$LogFile="$LogDir\couch.log"
$BuildFauxton = [int](-not $DisableFauxton)
$BuildDocs = [int](-not $DisableDocs)
+$BuildNouveau = [int]($EnableNouveau)
$Hostname = [System.Net.Dns]::GetHostEntry([string]"localhost").HostName
$WithProper = (-not $DisableProper).ToString().ToLower()
$ErlangMD5 = ($EnableErlangMD5).ToString().ToLower()
@@ -151,11 +154,12 @@ $CouchDBConfig = @"
{prefix, "."}.
{data_dir, "./data"}.
{view_index_dir, "./data"}.
+{state_dir, "./data"}.
{log_file, ""}.
{fauxton_root, "./share/www"}.
{user, "$CouchDBUser"}.
{spidermonkey_version, "$SpiderMonkeyVersion"}.
-{node_name, "-name couchdb@localhost"}.
+{node_name, "-name couchdb@127.0.0.1"}.
{cluster_port, 5984}.
{backend_port, 5986}.
{prometheus_port, 17986}.
@@ -196,6 +200,7 @@ man_dir = $ManDir
with_fauxton = $BuildFauxton
with_docs = $BuildDocs
+with_nouveau = $BuildNouveau
user = $CouchDBUser
spidermonkey_version = $SpiderMonkeyVersion