summaryrefslogtreecommitdiff
path: root/ACE/Release
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/Release')
-rw-r--r--ACE/Release213
1 files changed, 213 insertions, 0 deletions
diff --git a/ACE/Release b/ACE/Release
new file mode 100644
index 00000000000..bec32e4a29c
--- /dev/null
+++ b/ACE/Release
@@ -0,0 +1,213 @@
+#----------------------------------------------------------------------------
+# $Id$
+#
+# Top-level Makefile for the ACE toolkit libraries, tests, and
+# applications
+#----------------------------------------------------------------------------
+
+#### NOTE: The following comments describe how to create kits.
+#### It's intended for use by ACE+TAO developers and
+#### maintainers only. ACE+TAO users need not be concerned
+#### with creating kits, just unpacking and using them.
+
+#### The "release" and "releaseall" targets can be used to create
+#### the ACE and ACE+TAO kits. By default, each creates a new beta
+#### release. To create a new minor or major release, add REL=minor
+#### or REL=major, respectively, to the make invocation.
+####
+#### NOTE: the REL modifier applies to _both_ ACE and TAO in
+#### releaseall!
+####
+#### To create a new ACE minor release and a TAO beta release:
+#### % make release REL=minor
+#### % cd TAO
+#### % make release
+####
+#### There are some other release/releaseall options [default value is in
+#### brackets]:
+#### ACE_TAG [ACE version in your workspace]: prepend tag with -ta
+#### TAO_TAG [TAO version in your workspace]: prepend tag with -tt
+####
+#### NOTE: the ACE and TAO versions will be updated automatically
+#### by release/releaseall. ACE_TAG and TAO_TAG can be overridden
+#### to kit a particular version.
+####
+#### APPLY_NEW_TAG [enabled]: set to null to disable
+#### CHECK [disabled]: set to -n to see what make_release will do, but not
+#### do it
+#### INSTALL_KIT [enabled]: set to null to not install in public
+#### ftp/http directory on host ace
+#### REL [beta]: set to minor or major, optionally, when applying a new tag
+#### ZIP_FILES [enabled]: set to -z to disable creation of .zip files
+####
+#### Example creation of ACE-only kit, version ACE-5_0_1 from current
+#### workspace:
+#### make release ACE_TAG='-ta ACE-5_0_1' APPLY_NEW_TAG= \
+#### INSTALL_KIT= ZIP_FILES=-z
+
+
+CONTROLLED_FILES = \
+ ACE-INSTALL.html \
+ ACE-install.sh \
+ ASNMP \
+ AUTHORS \
+ COPYING \
+ ChangeLog* \
+ FAQ \
+ Release \
+ NEWS \
+ ACE.mwc \
+ Makefile.am \
+ PROBLEM-REPORT-FORM \
+ README \
+ THANKS \
+ VERSION \
+ ACEXML \
+ ace \
+ apps \
+ bin \
+ configure.ac \
+ lib \
+ MPC \
+ docs \
+ etc \
+ examples \
+ include \
+ m4 \
+ netsvcs \
+ performance-tests \
+ tests \
+ Kokyu \
+ protocols \
+ websvcs \
+ contrib
+
+RELEASE_FILES = \
+ $(addprefix ACE_wrappers/,$(CONTROLLED_FILES)) \
+ ACE_wrappers/ACE-INSTALL \
+ ACE_wrappers/GNUmake* \
+ ACE_wrappers/*.dsw \
+ ACE_wrappers/*.sln \
+ ACE_wrappers/*.bor \
+ ACE_wrappers/*.vcw \
+ ACE_wrappers/Makefile.in \
+ ACE_wrappers/configure \
+ ACE_wrappers/aclocal.m4 \
+ ACE_wrappers/aux_config
+
+
+ALL_RELEASE_FILES = \
+ $(RELEASE_FILES) \
+ ACE_wrappers/TAO
+
+RELEASE_LIB_FILES = \
+ ACE_wrappers/VERSION \
+ ACE_wrappers/ace \
+ ACE_wrappers/bin \
+ ACE_wrappers/lib \
+ ACE_wrappers/etc \
+ ACE_wrappers/include \
+ ACE_wrappers/m4 \
+ ACE_wrappers/netsvcs \
+ ACE_wrappers/tests \
+ ACE_wrappers/websvcs
+
+# Files that should get tagged at release time but shouldn't be in any
+# of the release file lists since they may already be in a directory
+# found in those lists.
+RELEASE_TAG_FILES = \
+ html
+
+.PHONY: tag ACE TAO CIAO acesources taosources ciaosources
+.PHONY: allsources manpages all
+
+# Some useful defines which are used to create the release bundle.
+ACE_TAG_VALUE = $(shell head -1 VERSION | perl -ne \
+ 's/.* ([\d\.]+),.*\n/$$1/; tr/./_/; print "ACE-$$_";')
+ACE_TAG = -ta $(ACE_TAG_VALUE)
+TAO_TAG_VALUE = $(shell head -1 TAO/VERSION | perl -ne \
+ 's/.* ([\d\.]+),.*\n/$$1/; tr/./_/; print "TAO-$$_";')
+TAO_TAG = -tt $(TAO_TAG_VALUE)
+CIAO_TAG_VALUE = $(shell head -1 TAO/CIAO/VERSION | perl -ne \
+ 's/.* ([\d\.]+),.*\n/$$1/; tr/./_/; print "CIAO-$$_";')
+CIAO_TAG = -tc $(CIAO_TAG_VALUE)
+APPLY_NEW_TAG = tag
+CHECK =
+INSTALL_KIT = -i
+REL = beta
+MAKE = make -f Release
+ZIP_FILES =
+
+tag:
+ @$(ACE_ROOT)/bin/make_release $(CHECK) -k ace -v $(REL) -u
+
+#### The allsources target:
+allsources: $(APPLY_NEW_TAG)
+ @cd TAO && $(MAKE) -s allsources REL=$(REL)
+
+### Generate man pages
+manpages:
+ @$(ACE_ROOT)/bin/generate_rel_manpages
+
+#### Generate everything in one shot -- not recommended
+all: allsources manpages
+
+#################################################################
+#### The following targets in the following block are used by the
+#### targets defined above. Please do not invoke them directly.
+#################################################################
+
+#### The release target creates the ACE (only) kit. This is not supposed
+#### to be used directly. Use make -f Release ACE instead.
+acesources: $(APPLY_NEW_TAG)
+ @$(ACE_ROOT)/bin/make_release -k ace $(ACE_TAG) \
+ $(INSTALL_KIT) $(ZIP_FILES) $(CHECK)
+
+#### The following target is for use by the TAO Release target. It
+#### should not be called directly from the command line. This is
+#### invoked by the TAO target this Release file.
+taosources:
+ @$(ACE_ROOT)/bin/make_release -k ace+tao $(ACE_TAG) $(TAO_TAG) \
+ $(INSTALL_KIT) $(ZIP_FILES) $(CHECK)
+
+#### The following target is for use by the TAO Release target. It
+#### should not be called directly from the command line. This is
+#### invoked by the TAO target this Release file.
+ciaosources:
+ @$(ACE_ROOT)/bin/make_release -k ace+tao+ciao $(ACE_TAG) $(TAO_TAG) $(CIAO_TAG) \
+ $(INSTALL_KIT) $(ZIP_FILES) $(CHECK)
+
+#########################################################################
+## The following targets are a matter of convinience. We don't
+## believe that we ever will release ACE+TAO+CIAO seperately. If that
+## happens then we have these to help us out.
+#########################################################################
+# First, CIAO standalone
+CIAO: $(allsources)
+
+# TAO standalone
+TAO: $(APPLY_NEW_TAG)
+ @cd TAO && $(MAKE) -s TAO REL=$(REL)
+
+# ACE standalone
+ACE: $(APPLY_NEW_TAG)
+ $(MAKE) -s acesources REL=$(REL)
+
+
+.PHONY: show_controlled_files show_release_files show_release_lib_files
+.PHONY: show_release_tag_files
+
+show_controlled_files:
+ @echo $(CONTROLLED_FILES)
+
+show_release_files:
+ @echo $(RELEASE_FILES)
+
+show_release_lib_files:
+ @echo $(RELEASE_LIB_FILES)
+
+show_release_tag_files:
+ @echo $(RELEASE_TAG_FILES)
+
+ACE-INSTALL: ACE-INSTALL.html
+ @lynx -dump $< > $@