Author: peterw
Date: 2005-07-15 00:53:41 -0400 (Fri, 15 Jul 2005)
New Revision: 47325
Added:
trunk/mbuild/Makefile.in
trunk/mbuild/autogen.sh
trunk/mbuild/configure.ac
trunk/mbuild/prefix-config.xml.in
Removed:
trunk/mbuild/Makefile
Modified:
trunk/mbuild/Buildfile
trunk/mbuild/ChangeLog
Log:
2005-07-15 Peter Williams <[EMAIL PROTECTED]>
Change the Makefile-based build system to use Autoconf. People will want
to install into custom prefixes, Mono might be in a weird prefix, etc.
And in general people feel more comfortable if they can do the whole
./configure blah blah blah thing. We also add explanatory text on 'make
install'
to tell people how to build MBuild with itself; we even import their
configured
prefix via a generated result storage XML file. Shows how the XML
import stuff
is pretty sweet.
* configure.ac: Check for required proggies.
* autogen.sh: A necessary evil. You know, in MBuild world, you don't
need
this file. Just saying.
* Makefile.in: New file. Based on Makefile, of course. Add a big
helpful text
explaining what to do next after doing a 'make install'. Add autoconf
rebuild rules
and a rule to generate prefix-config.xml.
* Makefile: This is now generated from Makefile.in.
* prefix-config.xml.in: New file, template for importing prefix
information
into an MBuild build from an Autoconf build.
* Buildfile: Distribute the above.
Modified: trunk/mbuild/Buildfile
===================================================================
--- trunk/mbuild/Buildfile 2005-07-15 03:53:44 UTC (rev 47324)
+++ trunk/mbuild/Buildfile 2005-07-15 04:53:41 UTC (rev 47325)
@@ -86,7 +86,7 @@
Mono.Build.dll = [
@Mono.Build.dll.sources
- System.Xml.dll
+ /config/mbuild/System.Xml.dll
/config/mbuild/gac_csc_options
] with [ install = /config/mbuild/gac_installer ]
@@ -181,6 +181,7 @@
# for now, this is how we do our version of EXTRA_DIST
Makefile = TextSource[]
+prefix-config.xml.in = TextSource[]
TODO = TextSource[]
with [ install = /config/mbuild/doc_installer ]
@@ -190,3 +191,4 @@
with [ install = /config/mbuild/doc_installer ]
NEWS = TextSource[]
with [ install = /config/mbuild/doc_installer ]
+
Modified: trunk/mbuild/ChangeLog
===================================================================
--- trunk/mbuild/ChangeLog 2005-07-15 03:53:44 UTC (rev 47324)
+++ trunk/mbuild/ChangeLog 2005-07-15 04:53:41 UTC (rev 47325)
@@ -1,3 +1,29 @@
+2005-07-15 Peter Williams <[EMAIL PROTECTED]>
+
+ Change the Makefile-based build system to use Autoconf. People will want
+ to install into custom prefixes, Mono might be in a weird prefix, etc.
+ And in general people feel more comfortable if they can do the whole
+ ./configure blah blah blah thing. We also add explanatory text on 'make
install'
+ to tell people how to build MBuild with itself; we even import their
configured
+ prefix via a generated result storage XML file. Shows how the XML
import stuff
+ is pretty sweet.
+
+ * configure.ac: Check for required proggies.
+
+ * autogen.sh: A necessary evil. You know, in MBuild world, you don't
need
+ this file. Just saying.
+
+ * Makefile.in: New file. Based on Makefile, of course. Add a big
helpful text
+ explaining what to do next after doing a 'make install'. Add autoconf
rebuild rules
+ and a rule to generate prefix-config.xml.
+
+ * Makefile: This is now generated from Makefile.in.
+
+ * prefix-config.xml.in: New file, template for importing prefix
information
+ into an MBuild build from an Autoconf build.
+
+ * Buildfile: Distribute the above.
+
2005-07-14 Peter Williams <[EMAIL PROTECTED]>
* Mono.Build.dll.sources: Get rid of IResultTypeLookup.cs, which I only
Deleted: trunk/mbuild/Makefile
===================================================================
--- trunk/mbuild/Makefile 2005-07-15 03:53:44 UTC (rev 47324)
+++ trunk/mbuild/Makefile 2005-07-15 04:53:41 UTC (rev 47325)
@@ -1,141 +0,0 @@
-# Bootstrapping ahoy!
-
-# keep in sync with Buildfile
-VERSION=0.0.4.0
-COMPAT=0.0
-NAME=mbuild
-COMPAT_NAME=$(NAME)-$(COMPAT)
-
-PREFIX=/usr
-libdir=$(PREFIX)/lib
-bindir=$(PREFIX)/bin
-exedir=$(libdir)/$(COMPAT_NAME)
-
-MCS=mcs /debug
-INSTALL=install
-GACUTIL=gacutil
-JAY=jay
-JAY_SKELETON=$(PREFIX)/share/jay/skeleton.cs
-BUNDLEGEN=mono mb-bundlegen.exe /v:$(VERSION)
-SN=sn -q
-
-default: all
-
-all: Mono.Build.dll MBuildDynamic.Core.dll MBuildDynamic.Languages.CSharp.dll
MBuildDynamic.Tools.Jay.dll MBuildDynamic.Tools.Bundlegen.dll
MBuildDynamic.Tools.Monodoc.dll MBuildDynamic.Tools.PkgConfig.dll
Monkeywrench.dll mbuild.exe mb-bundlegen.exe mb-bd2xhtml.exe
scripts/mb-bd2xhtml scripts/mb-bundlegen scripts/mbuild
-
-# ghastly
-mb-bundlegen.exe: mb-bundlegen/mb-bundlegen.exe.sources $(patsubst
%,mb-bundlegen/%,$(shell cat mb-bundlegen/mb-bundlegen.exe.sources))
- (cd mb-bundlegen && $(MCS) /target:exe /out:../$@
/r:Mono.GetOptions.dll @mb-bundlegen.exe.sources)
-
-mb-bd2xhtml.exe: mb-bd2xhtml/mb-bd2xhtml.exe.sources $(patsubst
%,mb-bd2xhtml/%,$(shell cat mb-bd2xhtml/mb-bd2xhtml.exe.sources))
- (cd mb-bd2xhtml && $(MCS) /target:exe /out:../$@ /r:Mono.GetOptions.dll
/r:System.Xml.dll /resource:bd2xhtml.xsl,bs2xhtml.xsl @mb-bd2xhtml.exe.sources)
-
-# horrendous
-make-version.stamp: phonydep
- @if test -f $@ ; then \
- echo "$(VERSION)" >[EMAIL PROTECTED] ; \
- if ! cmp $@ [EMAIL PROTECTED] ; then \
- cp -f [EMAIL PROTECTED] $@ ; \
- echo Version stamp $@ updated ; \
- fi ; \
- rm [EMAIL PROTECTED] ; \
- else \
- echo "$(VERSION)" >$@ ; \
- echo Version stamp $@ created ; \
- fi
-
-# awful
-.PHONY: phonydep
-
-MB_VERSION_FILE=Mono.Build/Assembly/GeneratedAssemblyVersionInfo.cs
-BG_VERSION_FILE=mb-bundlegen/GeneratedAssemblyVersionInfo.cs
-BD_VERSION_FILE=mb-bd2xhtml/GeneratedAssemblyVersionInfo.cs
-CL_VERSION_FILE=mbuild/GeneratedAssemblyVersionInfo.cs
-
-# terrible
-$(MB_VERSION_FILE): make-version.stamp
- echo '[assembly: System.Reflection.AssemblyVersion("$(VERSION)")]' >$@
-
-# dastardly
-$(CL_VERSION_FILE): make-version.stamp
- echo '[assembly: System.Reflection.AssemblyVersion("$(VERSION)")]' >$@
-
-# despicable
-$(BD_VERSION_FILE): make-version.stamp
- echo '[assembly: System.Reflection.AssemblyVersion("$(VERSION)")]' >$@
-
-# shit like this is why I wrote mbuild
-$(BG_VERSION_FILE): make-version.stamp
- echo '[assembly: System.Reflection.AssemblyVersion("$(VERSION)")]' >$@
-
-Mono.Build.dll: Mono.Build.dll.sources $(shell cat Mono.Build.dll.sources)
- $(MCS) /target:library /out:$@ /keyfile:mbuild.snk @$<
- $(SN) -R $@ mbuild.snk
-
-MBuildDynamic.Core.dll: MBuildDynamic.Core.dll.sources $(shell cat
MBuildDynamic.Core.dll.sources) Mono.Build.dll mb-bundlegen.exe
- $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll $(shell
cat MBuildDynamic.Core.dll.sources)
- $(SN) -R $@ mbuild.snk
-
-MBuildDynamic.Languages.CSharp.dll: Languages.CSharp.bundle Mono.Build.dll
MBuildDynamic.Core.dll mb-bundlegen.exe csharp-check-template.cs.in
- $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll /resource:csharp-check-template.cs.in $<
- $(SN) -R $@ mbuild.snk
-
-MBuildDynamic.Tools.PkgConfig.dll: Tools.PkgConfig.bundle Mono.Build.dll
MBuildDynamic.Core.dll mb-bundlegen.exe
- $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll $<
- $(SN) -R $@ mbuild.snk
-
-MBuildDynamic.Tools.Bundlegen.dll: Tools.Bundlegen.bundle Mono.Build.dll
MBuildDynamic.Core.dll mb-bundlegen.exe mbuild.snk
- $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll /resource:mbuild.snk $<
- $(SN) -R $@ mbuild.snk
-
-MBuildDynamic.Tools.Monodoc.dll: Tools.Monodoc.bundle Mono.Build.dll
MBuildDynamic.Core.dll mb-bundlegen.exe api-docs/mkmstoc.xsl
- $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll /resource:api-docs/mkmstoc.xsl $<
- $(SN) -R $@ mbuild.snk
-
-MBuildDynamic.Tools.Jay.dll: Tools.Jay.bundle Mono.Build.dll
MBuildDynamic.Core.dll MBuildDynamic.Languages.CSharp.dll mb-bundlegen.exe
- $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll /r:./MBuildDynamic.Languages.CSharp.dll $<
- $(SN) -R $@ mbuild.snk
-
-Monkeywrench.dll: Monkeywrench.dll.sources $(shell cat
Monkeywrench.dll.sources) Mono.Build.dll
- $(MCS) /target:library /out:$@ /r:./Mono.Build.dll @$<
-
-mbuild.exe: mbuild.exe.sources $(shell cat mbuild.exe.sources)
Monkeywrench.dll Mono.Build.dll
- $(MCS) /target:exe /out:$@ /r:./Monkeywrench.dll /r:./Mono.Build.dll
/r:Mono.GetOptions.dll @$<
-
-Monkeywrench/Monkeywrench/BuildfileParser.cs:
Monkeywrench/Monkeywrench/BuildfileParser.jay
- $(JAY) -ct <$(JAY_SKELETON) $< >$@
-
-mb-bundlegen/Parser.cs: mb-bundlegen/Parser.jay
- $(JAY) -ct <$(JAY_SKELETON) $< >$@
-
-scripts/%: scripts/%.in
- sed -e 's,@prefix@,$(PREFIX),g' <$< >$@
-
-# Utility
-
-clean:
- rm -f *.exe *.dll
-
-install: all
- mkdir -p $(libdir)
- mkdir -p $(exedir)
- mkdir -p $(bindir)
- $(INSTALL) -m 755 Monkeywrench.dll $(exedir)
- $(INSTALL) -m 755 Monkeywrench.dll.mdb $(exedir)
- $(INSTALL) -m 755 mbuild.exe $(exedir)
- $(INSTALL) -m 755 mbuild.exe.mdb $(exedir)
- $(INSTALL) -m 755 mb-bundlegen.exe $(exedir)
- $(INSTALL) -m 755 mb-bundlegen.exe.mdb $(exedir)
- $(INSTALL) -m 755 mb-bd2xhtml.exe $(exedir)
- $(INSTALL) -m 755 mb-bd2xhtml.exe.mdb $(exedir)
- $(INSTALL) -m 755 scripts/mbuild $(bindir)
- $(INSTALL) -m 755 scripts/mb-bundlegen $(bindir)
- $(INSTALL) -m 755 scripts/mb-bd2xhtml $(bindir)
- $(GACUTIL) /i Mono.Build.dll /f /root $(libdir) /package $(COMPAT_NAME)
- for t in Core Languages.CSharp Tools.Jay Tools.PkgConfig
Tools.Bundlegen Tools.Monodoc ; do \
- $(GACUTIL) /i MBuildDynamic.$$t.dll /f /root $(libdir) /package
$(COMPAT_NAME) ; \
- done
-
-install-extra:
- $(INSTALL) -m 755 scripts/mb-gtkconfig $(bindir)
- $(INSTALL) -m 755 scripts/mb-bd2xhtml $(bindir)
Added: trunk/mbuild/Makefile.in
===================================================================
--- trunk/mbuild/Makefile.in 2005-07-15 03:53:44 UTC (rev 47324)
+++ trunk/mbuild/Makefile.in 2005-07-15 04:53:41 UTC (rev 47325)
@@ -0,0 +1,194 @@
+# Bootstrapping ahoy!
+
+# keep in sync with Buildfile
[EMAIL PROTECTED]@
[EMAIL PROTECTED]@
[EMAIL PROTECTED]@
+COMPAT_NAME=$(NAME)-$(COMPAT)
[EMAIL PROTECTED] ' '
+
+# don't subst @libdir@ here since it may be
+# lib64 which is not what we want
+
[EMAIL PROTECTED]@
+libdir=$(PREFIX)/lib
[EMAIL PROTECTED]@
+exedir=$(libdir)/$(COMPAT_NAME)
+
[EMAIL PROTECTED]@ /debug
+INSTALL=install
[EMAIL PROTECTED]@
[EMAIL PROTECTED]@
[EMAIL PROTECTED]@
[EMAIL PROTECTED]@ mb-bundlegen.exe /v:$(VERSION)
[EMAIL PROTECTED]@ -q
+
+default: all
+
+all: Mono.Build.dll MBuildDynamic.Core.dll MBuildDynamic.Languages.CSharp.dll
MBuildDynamic.Tools.Jay.dll MBuildDynamic.Tools.Bundlegen.dll
MBuildDynamic.Tools.Monodoc.dll MBuildDynamic.Tools.PkgConfig.dll
Monkeywrench.dll mbuild.exe mb-bundlegen.exe mb-bd2xhtml.exe
scripts/mb-bd2xhtml scripts/mb-bundlegen scripts/mbuild prefix-config.xml
+
+# ghastly
+mb-bundlegen.exe: mb-bundlegen/mb-bundlegen.exe.sources $(patsubst
%,mb-bundlegen/%,$(shell cat mb-bundlegen/mb-bundlegen.exe.sources))
+ (cd mb-bundlegen && $(MCS) /target:exe /out:../$@
/r:Mono.GetOptions.dll @mb-bundlegen.exe.sources)
+
+mb-bd2xhtml.exe: mb-bd2xhtml/mb-bd2xhtml.exe.sources $(patsubst
%,mb-bd2xhtml/%,$(shell cat mb-bd2xhtml/mb-bd2xhtml.exe.sources))
+ (cd mb-bd2xhtml && $(MCS) /target:exe /out:../$@ /r:Mono.GetOptions.dll
/r:System.Xml.dll /resource:bd2xhtml.xsl,bs2xhtml.xsl @mb-bd2xhtml.exe.sources)
+
+# horrendous
+make-version.stamp: phonydep
+ @if test -f $@ ; then \
+ echo "$(VERSION)" >[EMAIL PROTECTED] ; \
+ if ! cmp $@ [EMAIL PROTECTED] ; then \
+ cp -f [EMAIL PROTECTED] $@ ; \
+ echo Version stamp $@ updated ; \
+ fi ; \
+ rm [EMAIL PROTECTED] ; \
+ else \
+ echo "$(VERSION)" >$@ ; \
+ echo Version stamp $@ created ; \
+ fi
+
+make-prefix.stamp: phonydep
+ @if test -f $@ ; then \
+ echo "$(PREFIX)" >[EMAIL PROTECTED] ; \
+ if ! cmp $@ [EMAIL PROTECTED] ; then \
+ cp -f [EMAIL PROTECTED] $@ ; \
+ echo Prefix stamp $@ updated ; \
+ fi ; \
+ rm [EMAIL PROTECTED] ; \
+ else \
+ echo "$(PREFIX)" >$@ ; \
+ echo Prefix stamp $@ created ; \
+ fi
+
+# awful
+.PHONY: phonydep
+
+MB_VERSION_FILE=Mono.Build/Assembly/GeneratedAssemblyVersionInfo.cs
+BG_VERSION_FILE=mb-bundlegen/GeneratedAssemblyVersionInfo.cs
+BD_VERSION_FILE=mb-bd2xhtml/GeneratedAssemblyVersionInfo.cs
+CL_VERSION_FILE=mbuild/GeneratedAssemblyVersionInfo.cs
+
+# terrible
+$(MB_VERSION_FILE): make-version.stamp
+ echo '[assembly: System.Reflection.AssemblyVersion("$(VERSION)")]' >$@
+
+# dastardly
+$(CL_VERSION_FILE): make-version.stamp
+ echo '[assembly: System.Reflection.AssemblyVersion("$(VERSION)")]' >$@
+
+# despicable
+$(BD_VERSION_FILE): make-version.stamp
+ echo '[assembly: System.Reflection.AssemblyVersion("$(VERSION)")]' >$@
+
+# shit like this is why I wrote mbuild
+$(BG_VERSION_FILE): make-version.stamp
+ echo '[assembly: System.Reflection.AssemblyVersion("$(VERSION)")]' >$@
+
+Mono.Build.dll: Mono.Build.dll.sources $(shell cat Mono.Build.dll.sources)
+ $(MCS) /target:library /out:$@ /keyfile:mbuild.snk @$<
+ $(SN) -R $@ mbuild.snk
+
+MBuildDynamic.Core.dll: MBuildDynamic.Core.dll.sources $(shell cat
MBuildDynamic.Core.dll.sources) Mono.Build.dll mb-bundlegen.exe
+ $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll $(shell
cat MBuildDynamic.Core.dll.sources)
+ $(SN) -R $@ mbuild.snk
+
+MBuildDynamic.Languages.CSharp.dll: Languages.CSharp.bundle Mono.Build.dll
MBuildDynamic.Core.dll mb-bundlegen.exe csharp-check-template.cs.in
+ $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll /resource:csharp-check-template.cs.in $<
+ $(SN) -R $@ mbuild.snk
+
+MBuildDynamic.Tools.PkgConfig.dll: Tools.PkgConfig.bundle Mono.Build.dll
MBuildDynamic.Core.dll mb-bundlegen.exe
+ $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll $<
+ $(SN) -R $@ mbuild.snk
+
+MBuildDynamic.Tools.Bundlegen.dll: Tools.Bundlegen.bundle Mono.Build.dll
MBuildDynamic.Core.dll mb-bundlegen.exe mbuild.snk
+ $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll /resource:mbuild.snk $<
+ $(SN) -R $@ mbuild.snk
+
+MBuildDynamic.Tools.Monodoc.dll: Tools.Monodoc.bundle Mono.Build.dll
MBuildDynamic.Core.dll mb-bundlegen.exe api-docs/mkmstoc.xsl
+ $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll /resource:api-docs/mkmstoc.xsl $<
+ $(SN) -R $@ mbuild.snk
+
+MBuildDynamic.Tools.Jay.dll: Tools.Jay.bundle Mono.Build.dll
MBuildDynamic.Core.dll MBuildDynamic.Languages.CSharp.dll mb-bundlegen.exe
+ $(BUNDLEGEN) /out:$@ /keyfile:mbuild.snk /r:./Mono.Build.dll
/r:./MBuildDynamic.Core.dll /r:./MBuildDynamic.Languages.CSharp.dll $<
+ $(SN) -R $@ mbuild.snk
+
+Monkeywrench.dll: Monkeywrench.dll.sources $(shell cat
Monkeywrench.dll.sources) Mono.Build.dll
+ $(MCS) /target:library /out:$@ /r:./Mono.Build.dll @$<
+
+mbuild.exe: mbuild.exe.sources $(shell cat mbuild.exe.sources)
Monkeywrench.dll Mono.Build.dll
+ $(MCS) /target:exe /out:$@ /r:./Monkeywrench.dll /r:./Mono.Build.dll
/r:Mono.GetOptions.dll @$<
+
+Monkeywrench/Monkeywrench/BuildfileParser.cs:
Monkeywrench/Monkeywrench/BuildfileParser.jay
+ $(JAY) -ct <$(JAY_SKELETON) $< >$@
+
+mb-bundlegen/Parser.cs: mb-bundlegen/Parser.jay
+ $(JAY) -ct <$(JAY_SKELETON) $< >$@
+
+scripts/%: scripts/%.in make-prefix.stamp
+ sed -e 's,@''prefix@,$(PREFIX),g' <$< >$@
+
+prefix-config.xml: prefix-config.xml.in make-prefix.stamp
+ sed -e 's,@''prefix@,$(PREFIX),g' <$< >$@
+
+# Utility
+
+clean:
+ rm -f *.exe *.dll *.mdb *.stamp scripts/mbuild scripts/mb-bundlegen
scripts/mb-bd2xhtml
+
+maintainer-clean: clean
+ rm -f config.status configure Makefile
+
+dist:
+ @echo You should only create distributions of MBuild using MBuild
+ @false
+
+install: all
+ mkdir -p $(libdir)
+ mkdir -p $(exedir)
+ mkdir -p $(bindir)
+ $(INSTALL) -m 755 Monkeywrench.dll $(exedir)
+ $(INSTALL) -m 755 Monkeywrench.dll.mdb $(exedir)
+ $(INSTALL) -m 755 mbuild.exe $(exedir)
+ $(INSTALL) -m 755 mbuild.exe.mdb $(exedir)
+ $(INSTALL) -m 755 mb-bundlegen.exe $(exedir)
+ $(INSTALL) -m 755 mb-bundlegen.exe.mdb $(exedir)
+ $(INSTALL) -m 755 mb-bd2xhtml.exe $(exedir)
+ $(INSTALL) -m 755 mb-bd2xhtml.exe.mdb $(exedir)
+ $(INSTALL) -m 755 scripts/mbuild $(bindir)
+ $(INSTALL) -m 755 scripts/mb-bundlegen $(bindir)
+ $(INSTALL) -m 755 scripts/mb-bd2xhtml $(bindir)
+ $(GACUTIL) /i Mono.Build.dll /f /root $(libdir) /package $(COMPAT_NAME)
+ for t in Core Languages.CSharp Tools.Jay Tools.PkgConfig
Tools.Bundlegen Tools.Monodoc ; do \
+ $(GACUTIL) /i MBuildDynamic.$$t.dll /f /root $(libdir) /package
$(COMPAT_NAME) ; \
+ done
+ $(ECHOPFX)
+ $(ECHOPFX) NOTE: You have only installed a partial version of MBuild.
The rest
+ $(ECHOPFX) of MBuild is built with MBuild itself. You can build the
rest of the
+ $(ECHOPFX) tools by running the following commands:
+ $(ECHOPFX)
+ $(ECHOPFX) ' mkdir BUILD && (cd BUILD ; mbuild -i .. && mbuild
--import-xml:../prefix-config.xml' \\
+ $(ECHOPFX) ' && mbuild)'
+ $(ECHOPFX)
+ $(ECHOPFX) and install them by running
+ $(ECHOPFX)
+ $(ECHOPFX) ' (cd BUILD ; mbuild -I)'
+ $(ECHOPFX)
+ $(ECHOPFX) with the necessary privileges. The first command will
generate a lot
+ $(ECHOPFX) of output, so write down the second command in case you
forget what to do.
+ $(ECHOPFX)
+
+install-extra:
+ $(INSTALL) -m 755 scripts/mb-gtkconfig $(bindir)
+ $(INSTALL) -m 755 scripts/mb-bd2xhtml $(bindir)
+
+# Auto-foo
+
+configure: configure.ac
+ autoconf
+
+config.status: configure
+ ./config.status --recheck
+
+Makefile: Makefile.in config.status
+ CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
Added: trunk/mbuild/autogen.sh
===================================================================
--- trunk/mbuild/autogen.sh 2005-07-15 03:53:44 UTC (rev 47324)
+++ trunk/mbuild/autogen.sh 2005-07-15 04:53:41 UTC (rev 47325)
@@ -0,0 +1,42 @@
+#!/bin/sh
+# Run this to generate all the initial makefiles, etc.
+# Ripped off from the Mono ripoff from GNOME macros version
+
+PKG_NAME=MBuild
+
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
+
+if test "x$srcdir" = "x." ; then
+ :
+else
+ echo "Sorry, $PKG_NAME cannot be compiled out of its source directory."
+ echo "Please run autogen.sh from inside the $PKG_NAME source package."
+ exit 1
+fi
+
+(autoconf --version) < /dev/null > /dev/null 2>&1 || {
+ echo
+ echo "**Error**: You must have \`autoconf' installed to compile $PKG_NAME."
+ echo "Download the appropriate package for your distribution,"
+ echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
+ exit 1
+}
+
+echo "Running autoconf ..."
+autoconf || { echo "**Error**: autoconf failed."; exit 1; }
+
+if test -z "$*"; then
+ echo "**Warning**: I am going to run \`configure' with no arguments."
+ echo "If you wish to pass any to it, please specify them on the"
+ echo \`$0\'" command line."
+ echo
+fi
+
+if test x$NOCONFIGURE = x; then
+ echo Running $srcdir/configure $conf_flags "$@" ...
+ $srcdir/configure $conf_flags "$@" \
+ && echo Now type \`make\' to compile $PKG_NAME || exit 1
+else
+ echo Skipping configure process.
+fi
Property changes on: trunk/mbuild/autogen.sh
___________________________________________________________________
Name: svn:executable
+ *
Added: trunk/mbuild/configure.ac
===================================================================
--- trunk/mbuild/configure.ac 2005-07-15 03:53:44 UTC (rev 47324)
+++ trunk/mbuild/configure.ac 2005-07-15 04:53:41 UTC (rev 47325)
@@ -0,0 +1,98 @@
+dnl -*- mode: m4 -*-
+AC_PREREQ(2.52)
+
+dnl Keep these in sync with the Buildfile
+
+AC_INIT(MBuild, 0.0.4.0, [EMAIL PROTECTED], mbuild)
+
+COMPAT=0.0
+AC_SUBST(COMPAT)
+
+dnl blah blah blah
+
+if test "x$srcdir" = "x." ; then
+ :
+else
+ AC_MSG_ERROR([Sorry, MBuild cannot be built outside of its source
directory.])
+fi
+
+AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
+if test "x$PKG_CONFIG" = "xno"; then
+ AC_MSG_ERROR([MBuild requires pkg-config to be compiled])
+fi
+
+AC_ARG_WITH([mono],
+[ --with-mono=/path/to/mono Tell me the prefix that Mono is installed in
(normally not needed)],
+[], [with_mono=no])
+
+AC_MSG_CHECKING([for Mono])
+
+if test "x$with_mono" = "xno" ; then
+ if $PKG_CONFIG --exists mono ; then
+ AC_MSG_RESULT(ok)
+ else
+ AC_MSG_RESULT(pkg-config failed)
+ AC_MSG_ERROR([The program \'$PKG_CONFIG\' failed to run or
+find Mono. Either pkg-config is not correctly installed, Mono is not correctly
+installed, or you need to use the PKG_CONFIG_PATH environment variable.])
+ fi
+
+ monoprefix=`$PKG_CONFIG --variable=prefix mono`
+else
+ AC_MSG_RESULT([specified: $with_mono])
+ monoprefix="$with_mono"
+fi
+
+AC_PATH_PROG(MONO, mono, no, [$monoprefix/bin:$PATH])
+if test "x$MONO" = "xno"; then
+ AC_MSG_ERROR([Could not find 'mono'. To compile MBuild, you must have
the Mono
+runtime installed])
+fi
+
+AC_PATH_PROG(MCS, mcs, no, [$monoprefix/bin:$PATH])
+if test "x$MCS" = "xno"; then
+ AC_MSG_ERROR([Could not find 'mcs'. To compile MBuild, you must have the
+Mono C-Sharp compiler installed.])
+fi
+
+AC_PATH_PROG(GACUTIL, gacutil, no, [$monoprefix/bin:$PATH])
+if test "x$GACUTIL" = "xno"; then
+ AC_MSG_ERROR([Could not find 'gacutil'. To compile MBuild, you must
have the
+Mono runtime installed.])
+fi
+
+AC_PATH_PROG(JAY, jay, no, [$monoprefix/bin:$PATH])
+if test "x$JAY" = "xno"; then
+ AC_MSG_ERROR([Could not find 'jay'. To compile MBuild, you must have the
+Mono development toolkit installed.])
+fi
+
+AC_PATH_PROG(SN, sn, no, [$monoprefix/bin:$PATH])
+if test "x$SN" = "xno"; then
+ AC_MSG_ERROR([Could not find 'sn'. To compile MBuild, you must have the
+Mono development toolkit installed.])
+fi
+
+AC_ARG_WITH([jay-skeleton],
+[ --with-jay-skeleton=filename Tell me where to find the Jay skeleton file
(normally not needed)],
+[], [with_jay_skeleton=no])
+
+AC_MSG_CHECKING([for Jay skeleton file])
+
+if test x$with_jay_skeleton = xno ; then
+ if test -f "$monoprefix/share/jay/skeleton.cs" ; then
+ AC_MSG_RESULT(ok)
+ else
+ AC_MSG_RESULT([did not find $monoprefix/share/jay/skeleton.cs])
+ AC_MSG_ERROR([I could not find the Jay skeleton template, a
development
+file that should be installed along with Mono. Do you have the Mono developer
files
+installed?])
+ fi
+else
+ AC_MSG_RESULT([specified: $with_jay_skeleton])
+fi
+
+JAY_SKELETON_FILE="$with_jay_skeleton"
+AC_SUBST(JAY_SKELETON_FILE)
+
+AC_OUTPUT([Makefile])
Added: trunk/mbuild/prefix-config.xml.in
===================================================================
--- trunk/mbuild/prefix-config.xml.in 2005-07-15 03:53:44 UTC (rev 47324)
+++ trunk/mbuild/prefix-config.xml.in 2005-07-15 04:53:41 UTC (rev 47325)
@@ -0,0 +1,15 @@
+<!-- We use this file to import Autoconf's idea of the prefix
+ into MBuild, avoiding the annoying prompt of a bare-bones
+ 'mbuild -C'. This is suggested in the instructions printed
+ after the user runs a 'make install'.
+
+ This file also serves as a cute demo of how the -import-xml
+ and -export-xml commands are useful.
+-->
+
+<mbuild-results>
+ <metadata />
+ <targets>
+ <result id="/config/install/prefix"
type="Mono.Build.MBString">@prefix@</result>
+ </targets>
+</mbuild-results>
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches