2010-11-10 08:26:03 -06:00
|
|
|
#*************************************************************************
|
|
|
|
#
|
|
|
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
|
|
#
|
|
|
|
# Copyright 2000, 2010 Oracle and/or its affiliates.
|
|
|
|
#
|
|
|
|
# OpenOffice.org - a multi-platform office productivity suite
|
|
|
|
#
|
|
|
|
# This file is part of OpenOffice.org.
|
|
|
|
#
|
|
|
|
# OpenOffice.org is free software: you can redistribute it and/or modify
|
|
|
|
# it under the terms of the GNU Lesser General Public License version 3
|
|
|
|
# only, as published by the Free Software Foundation.
|
|
|
|
#
|
|
|
|
# OpenOffice.org is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
# GNU Lesser General Public License version 3 for more details
|
|
|
|
# (a copy is included in the LICENSE file that accompanied this code).
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU Lesser General Public License
|
|
|
|
# version 3 along with OpenOffice.org. If not, see
|
|
|
|
# <http://www.openoffice.org/license.html>
|
|
|
|
# for a copy of the LGPLv3 License.
|
|
|
|
#
|
|
|
|
#*************************************************************************
|
|
|
|
|
|
|
|
# extend for JDK include (seems only needed in setsolar env?)
|
|
|
|
SOLARINC += $(JDKINCS)
|
|
|
|
|
|
|
|
OUTDIR := $(SOLARVERSION)/$(INPATH)
|
|
|
|
WORKDIR := $(SOLARVERSION)/$(INPATH)/workdir
|
|
|
|
|
2010-11-13 11:34:45 -06:00
|
|
|
.PHONY : setuplocal removelocal
|
2010-11-10 08:26:03 -06:00
|
|
|
ifneq ($(gb_LOCALBUILDDIR),)
|
2010-11-13 11:20:05 -06:00
|
|
|
ifneq ($(wildcard $(gb_LOCALBUILDDIR)/SetupLocal.mk),)
|
|
|
|
include $(gb_LOCALBUILDDIR)/SetupLocal.mk
|
|
|
|
$(eval $(call gb_Output_info,Using local setup at $(gb_LOCALBUILDDIR).,ALL))
|
|
|
|
$(eval $(call gb_Output_info,gb_REPOS:=$(gb_REPOS),ALL))
|
|
|
|
$(eval $(call gb_Output_info,WORKDIR:=$(WORKDIR),ALL))
|
|
|
|
$(eval $(call gb_Output_info,OUTDIR:=$(OUTDIR),ALL))
|
2010-11-11 08:34:23 -06:00
|
|
|
|
2010-11-13 11:20:05 -06:00
|
|
|
setuplocal :
|
|
|
|
$(eval, $(call gb_Output_error,$(gb_LOCALBUILDDIR) exists already.))
|
|
|
|
|
|
|
|
else
|
2010-11-11 08:34:23 -06:00
|
|
|
|
2010-11-10 08:26:03 -06:00
|
|
|
setuplocal :
|
2010-11-14 10:49:44 -06:00
|
|
|
$(eval MODULE := $(firstword $(MODULE) $(lastword $(subst /, ,$(dir $(realpath $(firstword $(MAKEFILE_LIST))))))))
|
2010-11-13 11:20:05 -06:00
|
|
|
$(eval modulerepo := $(patsubst %/$(MODULE),%,$(foreach repo,$(gb_REPOS),$(wildcard $(repo)/$(MODULE)))))
|
2010-11-14 10:49:44 -06:00
|
|
|
$(eval $(call gb_Output_announce,setting up local build directory (module: $(MODULE)).,$(true),SYC,5))
|
2010-11-13 11:20:05 -06:00
|
|
|
mkdir -p $(gb_LOCALBUILDDIR)/srcdir $(gb_LOCALBUILDDIR)/workdir $(gb_LOCALBUILDDIR)/outdir
|
2010-11-13 18:21:34 -06:00
|
|
|
rsync --archive --exclude 'workdir/**' $(SOLARVERSION)/$(INPATH)/ $(gb_LOCALBUILDDIR)/outdir
|
2010-11-13 11:20:05 -06:00
|
|
|
cp $(modulerepo)/Repository.mk $(gb_LOCALBUILDDIR)/srcdir/Repository.mk
|
|
|
|
cp $(modulerepo)/RepositoryFixes.mk $(gb_LOCALBUILDDIR)/srcdir/RepositoryFixes.mk
|
2010-11-13 18:21:34 -06:00
|
|
|
rsync --archive $(modulerepo)/$(MODULE)/ $(gb_LOCALBUILDDIR)/srcdir/$(MODULE)
|
2010-11-13 11:20:05 -06:00
|
|
|
echo "gb_REPOS := $(gb_LOCALBUILDDIR)/srcdir $(filter-out $(patsubst %/$(MODULE),%,$(foreach repo,$(gb_REPOS),$(wildcard $(repo)/$(MODULE)))),$(gb_REPOS))" > $(gb_LOCALBUILDDIR)/SetupLocal.mk
|
|
|
|
echo "#original gb_REPOS was $(gb_REPOS)" >> $(gb_LOCALBUILDDIR)/SetupLocal.mk
|
|
|
|
echo "OUTDIR := $(gb_LOCALBUILDDIR)/outdir" >> $(gb_LOCALBUILDDIR)/SetupLocal.mk
|
|
|
|
echo "#original OUTDIR was $(OUTDIR)" >> $(gb_LOCALBUILDDIR)/SetupLocal.mk
|
|
|
|
echo "WORKDIR := $(gb_LOCALBUILDDIR)/workdir" >> $(gb_LOCALBUILDDIR)/SetupLocal.mk
|
|
|
|
echo "#original WORKDIR was $(WORKDIR)" >> $(gb_LOCALBUILDDIR)/SetupLocal.mk
|
|
|
|
|
|
|
|
endif
|
2010-11-10 08:26:03 -06:00
|
|
|
|
|
|
|
endif
|
|
|
|
|
2010-11-13 11:34:45 -06:00
|
|
|
removelocal :
|
2010-11-14 10:49:44 -06:00
|
|
|
$(eval $(call gb_Output_warn,removing directory $(gb_LOCALBUILDDIR).,SYC))
|
2010-11-13 11:34:45 -06:00
|
|
|
sleep 10
|
|
|
|
rm -rf $(gb_LOCALBUILDDIR)
|
|
|
|
|
2010-11-10 08:26:03 -06:00
|
|
|
ifeq ($(strip $(gb_REPOS)),)
|
2010-11-10 17:07:10 -06:00
|
|
|
gb_REPOS := $(SOLARSRC)
|
2010-11-10 08:26:03 -06:00
|
|
|
endif
|
2010-11-10 17:07:10 -06:00
|
|
|
SRCDIR := $(firstword $(gb_REPOS))
|
2010-11-10 08:26:03 -06:00
|
|
|
|
|
|
|
# HACK
|
|
|
|
# unixify windoze paths
|
|
|
|
ifeq ($(OS),WNT)
|
2010-11-11 03:46:58 -06:00
|
|
|
SRCDIR := $(shell cygpath -u $(SRCDIR))
|
2010-11-10 08:26:03 -06:00
|
|
|
WORKDIR := $(shell cygpath -u $(WORKDIR))
|
|
|
|
OUTDIR := $(shell cygpath -u $(OUTDIR))
|
|
|
|
gb_REPOS := $(shell cygpath -u $(gb_REPOS))
|
|
|
|
endif
|
|
|
|
|
|
|
|
REPODIR := $(patsubst %/,%,$(dir $(firstword $(gb_REPOS))))
|
|
|
|
|
2010-11-13 11:20:05 -06:00
|
|
|
ifneq ($(MAKECMDGOALS),setuplocal)
|
|
|
|
ifneq ($(filter-out $(foreach repo,$(gb_REPOS),$(realpath $(repo))/%),$(realpath $(firstword $(MAKEFILE_LIST)))),)
|
|
|
|
$(eval $(call gb_Output_warn,The initial makefile $(realpath $(firstword $(MAKEFILE_LIST))) is not in the repositories $(foreach repo,$(gb_REPOS),$(realpath $(repo))).,ALL))
|
|
|
|
$(shell sleep 10)
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2010-11-10 08:26:03 -06:00
|
|
|
# vim: set noet sw=4 ts=4:
|