Skip to content

Commit

Permalink
* configure.in: Add an extra "only" option to --with-moonlight. This
Browse files Browse the repository at this point in the history
will configure mono to only build moonlight-specific stuff and
nothing else. --with-moonlight=yes now just adds the moon profile to
the build

* Makefile.am: Add moonlight-specific rules that only build what
moon needs. These are called directly from moon, to do fast
moon+mono+mcs builds

* runtime/Makefile.am: Change the build rules to have a moonlight-only
build configuration, as well as a normal build that optionally includes
it

svn path=/trunk/mono/; revision=155093
  • Loading branch information
shana committed Apr 8, 2010
1 parent d7d22b7 commit c4695a8
Show file tree
Hide file tree
Showing 4 changed files with 49 additions and 12 deletions.
15 changes: 15 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
2010-04-08 Andreia Gaita <[email protected]>

* configure.in: Add an extra "only" option to --with-moonlight. This
will configure mono to only build moonlight-specific stuff and
nothing else. --with-moonlight=yes now just adds the moon profile to
the build

* Makefile.am: Add moonlight-specific rules that only build what
moon needs. These are called directly from moon, to do fast
moon+mono+mcs builds

* runtime/Makefile.am: Change the build rules to have a moonlight-only
build configuration, as well as a normal build that optionally includes
it

2010-04-07 Raja R Harinath <[email protected]>

* runtime/Makefile.am ($(tmpinst)/bin/dmcs): Add.
Expand Down
24 changes: 19 additions & 5 deletions Makefile.am
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
AUTOMAKE_OPTIONS = foreign
ACLOCAL_AMFLAGS = -I .

MOONLIGHT_SUBDIRS = $(libgc_dir) $(eglib_dir) mono $(ikvm_native_dir) data

if CROSS_COMPILING
SUBDIRS = po $(libgc_dir) $(eglib_dir) mono $(ikvm_native_dir) data runtime scripts man samples web msvc $(docs_dir)
# Keep in sync with SUBDIRS
## 'tools' is not normally built
DIST_SUBDIRS = po libgc eglib mono ikvm-native data runtime scripts man samples web tools msvc docs
else
if MOONLIGHT
SUBDIRS = $(libgc_dir) $(eglib_dir) mono $(ikvm_native_dir) data runtime
if ONLY_MOONLIGHT
SUBDIRS = $(MOONLIGHT_SUBDIRS) runtime
else
SUBDIRS = po $(libgc_dir) $(eglib_dir) mono $(ikvm_native_dir) support data runtime scripts man samples web msvc $(docs_dir)
# Keep in sync with SUBDIRS
Expand Down Expand Up @@ -70,9 +72,21 @@ build-test-mono-mcs-moon: do-build-moon-maybe
do-build-mono-mcs: mcs-do-clean
$(MAKE) all

.PHONY: do-build-moon-maybe
do-build-moon-maybe: do-build-mono-mcs
# cd runtime && $(MAKE) moon-do-build
if MOONLIGHT
moon-do-build: config.h
@list='$(MOONLIGHT_SUBDIRS)'; for subdir in $$list; do \
echo "Making all in $$subdir"; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) all); \
done;
cd $(mcs_topdir) && NO_DIR_CHECK=1 $(MAKE) PROFILE=moonlight_raw all

moon-do-clean:
@list='$(MOONLIGHT_SUBDIRS)'; for subdir in $$list; do \
echo "Making clean in $$subdir"; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) clean); \
done;
cd $(mcs_topdir) && NO_DIR_CHECK=1 $(MAKE) PROFILE=moonlight_raw clean
endif

mcs-do-clean:
cd runtime && $(MAKE) clean-local
Expand Down
13 changes: 7 additions & 6 deletions configure.in
Original file line number Diff line number Diff line change
Expand Up @@ -2494,10 +2494,10 @@ AC_ARG_WITH(mcs_docs,[ --with-mcs-docs=yes,no If you want to build the
fi
])

MOONLIGHT=no
AC_ARG_WITH(moonlight, [ --with-moonlight=yes,no If you want to build Mono for Moonlight (defaults to no - the resulting mono build is useless for anything but moonlight)],[
if test x$with_moonlight = xyes; then
MOONLIGHT=yes
AC_ARG_WITH(moonlight, [ --with-moonlight=yes|no|only If you want to build Mono for Moonlight (defaults to no)],[
if test "x$with_moonlight" = "xyes"; then
AC_DEFINE(MOONLIGHT,1,[Building for Moonlight])
elif test "x$with_moonlight" = "xonly"; then
AC_DEFINE(MOONLIGHT,1,[Building for Moonlight])
fi
], [with_moonlight=no])
Expand All @@ -2524,7 +2524,8 @@ AC_SUBST(OPROFILE_LIBS)

libmono_ldflags="$libmono_ldflags $LIBS"

AM_CONDITIONAL(MOONLIGHT, [test "x$with_moonlight" = xyes])
AM_CONDITIONAL(MOONLIGHT, [test "x$with_moonlight" != "xno"])
AM_CONDITIONAL(ONLY_MOONLIGHT, [test "x$with_moonlight" = "xonly"])
AM_CONDITIONAL(INSTALL_4_0, [test "x$with_profile4" = xyes])
AM_CONDITIONAL(INSTALL_MONOTOUCH, [test "x$with_monotouch" = xyes])

Expand Down Expand Up @@ -2829,7 +2830,7 @@ fi
echo "DISABLE_MCS_DOCS = yes" >> $mcs_topdir/build/config.make
fi

if test x$with_moonlight = xyes; then
if test x$with_moonlight != xno; then
echo "MOONLIGHT = 1" >> $srcdir/$mcsdir/build/config.make
fi

Expand Down
9 changes: 8 additions & 1 deletion runtime/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,17 @@ $(symlinks):

SUPPORT_FILES = $(symlinks) mono-wrapper etc/mono/config

if MOONLIGHT
if ONLY_MOONLIGHT
build_profiles = moonlight_raw
test_profiles = moonlight_raw
else

build_profiles = net_2_0 net_3_5
test_profiles = $(build_profiles)

if MOONLIGHT
build_profiles += moonlight_raw
test_profiles += moonlight_raw
endif

if INSTALL_4_0
Expand All @@ -41,6 +46,8 @@ if INSTALL_MONOTOUCH
build_profiles += monotouch
endif

endif

if BUILD_MCS

# The write check is to foil 'make distcheck'
Expand Down

0 comments on commit c4695a8

Please sign in to comment.