From bb206eec148afc63ed7e84ac3bf9f951696fefb1 Mon Sep 17 00:00:00 2001 From: Richard Brooksby Date: Fri, 18 Mar 2016 15:37:53 +0000 Subject: [PATCH 1/2] Adding xci3ll.gmk to make it easier to test 32-bit builds on os x. Copied from Perforce Change: 190184 ServerID: perforce.ravenbrook.com --- mps/code/xci3ll.gmk | 72 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 mps/code/xci3ll.gmk diff --git a/mps/code/xci3ll.gmk b/mps/code/xci3ll.gmk new file mode 100644 index 00000000000..a0af3b7079d --- /dev/null +++ b/mps/code/xci3ll.gmk @@ -0,0 +1,72 @@ +# -*- makefile -*- +# +# xci3ll.gmk: BUILD FOR MAC OS X/i386/Clang PLATFORM +# +# $Id$ +# Copyright (c) 2001-2014 Ravenbrook Limited. See end of file for license. +# +# .prefer.xcode: The documented and preferred way to develop the MPS +# for this platform is to use the Xcode project (mps.xcodeproj). This +# makefile provides a way to compile the MPS one source file at a +# time, rather than all at once via mps.c (which can hide errors due +# to missing headers). + +PFM = xci3ll + +MPMPF = \ + lockix.c \ + prmci3xc.c \ + proti3.c \ + protix.c \ + protxc.c \ + span.c \ + ssixi3.c \ + thxc.c \ + vmix.c + +include ll.gmk + +CC = clang -arch i386 + +include comm.gmk + + +# C. COPYRIGHT AND LICENSE +# +# Copyright (C) 2001-2014 Ravenbrook Limited . +# All rights reserved. This is an open source license. Contact +# Ravenbrook for commercial licensing options. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 3. Redistributions in any form must be accompanied by information on how +# to obtain complete source code for this software and any accompanying +# software that uses this software. The source code must either be +# included in the distribution or be available for no more than the cost +# of distribution plus a nominal fee, and must be freely redistributable +# under reasonable conditions. For an executable file, complete source +# code means the source code for all modules it contains. It does not +# include source code for modules or files that typically accompany the +# major components of the operating system on which the executable file +# runs. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +# IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +# PURPOSE, OR NON-INFRINGEMENT, ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. From cc0b4af900c847e91a8b8c5e77d084335faf6417 Mon Sep 17 00:00:00 2001 From: Richard Brooksby Date: Sun, 20 Mar 2016 12:43:13 +0000 Subject: [PATCH 2/2] Reinstate -ansi flag on strict clang builds, which somehow got lost. Copied from Perforce Change: 190233 ServerID: perforce.ravenbrook.com --- mps/code/ll.gmk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mps/code/ll.gmk b/mps/code/ll.gmk index 787380fb3ed..1bdbef3afcb 100644 --- a/mps/code/ll.gmk +++ b/mps/code/ll.gmk @@ -32,7 +32,7 @@ CFLAGSCOMPILER := \ -Wstrict-prototypes \ -Wunreachable-code \ -Wwrite-strings -CFLAGSCOMPILERSTRICT := +CFLAGSCOMPILERSTRICT := -ansi # A different set of compiler flags for less strict compilation, for # instance when we need to #include a third-party header file that