## Licensed 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.

couchprivlibdir = $(localerlanglibdir)/couch-$(version)/priv/lib
devcouchprivlibdir = $(abs_top_builddir)/src/couchdb/priv/.libs

localconf_DATA = default.ini
noinst_DATA = default_dev.ini local_dev.ini

EXTRA_DIST = local.ini

CLEANFILES = $(localconf_DATA) $(noinst_DATA)

transform = @program_transform_name@
couchjs_command_name = `echo couchjs | sed '$(transform)'`
couchjs_dev_command_name = `echo couchjs_dev | sed '$(transform)'`

if WINDOWS
default.ini: default.ini.tpl
	sed -e "s|%bindir%|.|g" \
	    -e "s|%localconfdir%|$(localconfdir)|g" \
	    -e "s|%localdatadir%|../share/couchdb|g" \
	    -e "s|%localbuilddatadir%|../share/couchdb|g" \
	    -e "s|%localstatelibdir%|../var/lib/couchdb|g" \
	    -e "s|%localstatelogdir%|../var/log/couchdb|g" \
	    -e "s|%localstaterundir%|../var/run/couchdb|g" \
	    -e "s|%couchprivlibdir%|../lib/couch-$(version)/priv/lib|g" \
	    -e "s|%couchjs_command_name%|couchjs.exe|g" \
	    -e "s|%package_author_name%|$(package_author_name)|g" \
	    -e "s|%version%|$(version)|g" \
	< $< > $@
else
default.ini: default.ini.tpl
	sed -e "s|%bindir%|$(bindir)|g" \
	    -e "s|%localconfdir%|$(localconfdir)|g" \
	    -e "s|%localdatadir%|$(localdatadir)|g" \
	    -e "s|%localbuilddatadir%|$(localdatadir)|g" \
	    -e "s|%locallibdir%|$(locallibdir)|g" \
	    -e "s|%localstatelibdir%|$(localstatelibdir)|g" \
	    -e "s|%localstatelogdir%|$(localstatelogdir)|g" \
	    -e "s|%localstaterundir%|$(localstaterundir)|g" \
	    -e "s|%couchprivlibdir%|$(couchprivlibdir)|g" \
	    -e "s|%couchjs_command_name%|$(couchjs_command_name)|g" \
	    -e "s|%package_author_name%|$(package_author_name)|g" \
	    -e "s|%version%|$(version)|g" \
	< $< > $@
endif

default_dev.ini: default.ini.tpl
	sed -e "s|%bindir%|$(abs_top_builddir)/bin|g" \
	    -e "s|%localconfdir%|$(abs_top_builddir)/etc/couchdb|g" \
	    -e "s|%localdatadir%|$(abs_top_srcdir)/share|g" \
	    -e "s|%locallibdir%|$(abs_top_builddir)/tmp|g" \
	    -e "s|%localbuilddatadir%|$(abs_top_builddir)/share|g" \
	    -e "s|%localstatelibdir%|$(abs_top_builddir)/tmp/lib|g" \
	    -e "s|%localstatelogdir%|$(abs_top_builddir)/tmp/log|g" \
	    -e "s|%localstaterundir%|$(abs_top_builddir)/tmp/run|g" \
	    -e "s|%couchprivlibdir%|$(devcouchprivlibdir)|g" \
	    -e "s|%couchjs_command_name%|$(couchjs_dev_command_name)|g" \
	    -e "s|%package_author_name%|$(package_author_name)|g" \
	    -e "s|%version%|$(version)|g" \
	< $< > $@

# Noah said to not specify local.ini but it borks
# VPATH builds that make distcheck uses.
local_dev.ini: local.ini
	if test ! -f "$@"; then \
	    cp $< $@; \
	    chmod +w $@; \
	fi

install-data-hook:
	if test ! -f "$(DESTDIR)$(localconfdir)/local.ini"; then \
	    cp $(srcdir)/local.ini "$(DESTDIR)$(localconfdir)/local.ini"; \
	fi
	if test ! "$(mkdir_p)" = ""; then \
	    $(mkdir_p) "$(DESTDIR)$(localconfdir)/default.d"; \
	    $(mkdir_p) "$(DESTDIR)$(localconfdir)/local.d"; \
	else \
	    echo "WARNING: You may have to create these directories by hand."; \
	    mkdir -p "$(DESTDIR)$(localconfdir)/default.d"; \
	    mkdir -p "$(DESTDIR)$(localconfdir)/local.d"; \
	fi

uninstall-local:
	rm -f "$(DESTDIR)/$(localconfdir)/local.ini"
