From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id SAA02357; Fri, 27 Aug 2004 18:32:34 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id SAA02776 for ; Fri, 27 Aug 2004 18:32:33 +0200 (MET DST) Received: from annexia.force9.co.uk (annexia.force9.co.uk [212.56.101.183]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id i7RGWW3I000689 for ; Fri, 27 Aug 2004 18:32:33 +0200 Received: from rich by annexia.force9.co.uk with local (Exim 3.36 #1 (Debian)) id 1C0jeS-0007ak-00 for ; Fri, 27 Aug 2004 17:32:32 +0100 Date: Fri, 27 Aug 2004 17:32:32 +0100 To: caml-list@inria.fr Subject: [Caml-list] pa_macro to substitute a constant? Message-ID: <20040827163232.GB29127@annexia.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="UHN/qo2QbUvPLonB" Content-Disposition: inline User-Agent: Mutt/1.5.5.1+cvs20040105i From: Richard Jones X-Miltered: at nez-perce with ID 412F6220.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; foo:01 ocamlc:01 camlp:01 -pp:01 ltd:98 cmo:01 cmo:01 makefile:02 makefile:02 arch:02 perl:03 let:04 let:04 investment:94 reusable:06 X-Attachments: type="application/pgp-signature" name="signature.asc" Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk --UHN/qo2QbUvPLonB Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable How can I use pa_macro to substitute in a constant into a program? A real example: Makefile ------------------------------------------------------------ PACKAGE =3D foo VERSION =3D 1.0.0 version.cmo: version.ml Makefile ocamlc -I +camlp4 -pp 'camlp4o pa_macro.cmo -DPACKAGE=3D"$(PACKAGE)" -DVER= SION=3D"$(VERSION)"' $< -o $@ version.ml ---------------------------------------------------------- let package =3D PACKAGE let version =3D VERSION --------------------------------------------------------------------- Needless to say this example doesn't work, and looking at the thin documentation for pa_macro, I'm not even sure it's possible. Is it? Rich. --=20 Richard Jones. http://www.annexia.org/ http://www.j-london.com/ Merjis Ltd. http://www.merjis.com/ - improving website return on investment MONOLITH is an advanced framework for writing web applications in C, easier than using Perl & Java, much faster and smaller, reusable widget-based arch, database-backed, discussion, chat, calendaring: http://www.annexia.org/freeware/monolith/ --UHN/qo2QbUvPLonB Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQFBL2Ig4le1M6q9pzoRAr9NAJ9BVRJ41OXzQQ0OslDlu4Q5P6yQygCg2pgV YTApWRqRnRW0l/b0TTCXEU0= =Vy2N -----END PGP SIGNATURE----- --UHN/qo2QbUvPLonB-- ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners