My fix below just adds a space for Darwin and leaves them like they were for 
other platforms. Someone with better makefile abilities might be able to make a 
better fix, but using "-arch " as the ARCHFLAG doesn't work.


% svn diff
Index: make/Makefile.rules
===================================================================
--- make/Makefile.rules (revision 235064)
+++ make/Makefile.rules (working copy)
@@ -75,7 +75,7 @@
 # ARCHFLAG is the flag used to tell the compiler which architecture
 # to compile for. The default is the flag that clang accepts.
 #----------------------------------------------------------------------
-ARCHFLAG ?= "-arch "
+ARCHFLAG ?= -arch
 
 #----------------------------------------------------------------------
 # Change any build/tool options needed
@@ -127,11 +127,19 @@
 endif
 
 CFLAGS ?= -g -O0
-CFLAGS += $(ARCHFLAG)$(ARCH) $(FRAMEWORK_INCLUDES) $(CFLAGS_EXTRAS) 
-I$(LLDB_BASE_DIR)include
+ifeq "$(OS)" "Darwin"
+       CFLAGS += $(ARCHFLAG) $(ARCH) $(FRAMEWORK_INCLUDES) $(CFLAGS_EXTRAS) 
-I$(LLDB_BASE_DIR)include
+else
+       CFLAGS += $(ARCHFLAG)$(ARCH) $(FRAMEWORK_INCLUDES) $(CFLAGS_EXTRAS) 
-I$(LLDB_BASE_DIR)include
+endif
 CFLAGS += -include $(THIS_FILE_DIR)test_common.h
 
 # Use this one if you want to build one part of the result without debug 
information:
-CFLAGS_NO_DEBUG = -O0 $(ARCHFLAG)$(ARCH) $(FRAMEWORK_INCLUDES) $(CFLAGS_EXTRAS)
+ifeq "$(OS)" "Darwin"
+       CFLAGS_NO_DEBUG = -O0 $(ARCHFLAG) $(ARCH) $(FRAMEWORK_INCLUDES) 
$(CFLAGS_EXTRAS)
+else
+       CFLAGS_NO_DEBUG = -O0 $(ARCHFLAG)$(ARCH) $(FRAMEWORK_INCLUDES) 
$(CFLAGS_EXTRAS)
+endif
 
 CXXFLAGS += -std=c++11
 CXXFLAGS += $(CFLAGS)
% svn commit
Sending        make/Makefile.rules
Transmitting file data .
Committed revision 235065.


> On Apr 15, 2015, at 6:13 PM, Greg Clayton <[email protected]> wrote:
> 
> This doesn't work:
> 
> stdout: clang -g -O0 "-arch "x86_64   
> -I/Volumes/work/gclayton/Documents/src/lldb/trunk/test/make/../../include 
> -include 
> /Volumes/work/gclayton/Documents/src/lldb/trunk/test/make/test_common.h   -c 
> -o const-strings.o const-strings.m
> 
> As this produce a single argument whose value os "-arch x86_64":
> 
> stderr: clang: warning: argument unused during compilation: '-arch x86_64'
> 
>> On Apr 15, 2015, at 2:34 AM, Tamas Berghammer <[email protected]> wrote:
>> 
>> I committed in the fix suggested by Siva as r234949. Please feel free to 
>> update it with a cleaner solution if you know one.
>> 
>> Tamas
>> 
>> On Wed, Apr 15, 2015 at 1:37 AM, Zachary Turner <[email protected]> wrote:
>> Will break Windows too fwiw as windows uses clang for compiling
>> 
>> On Tue, Apr 14, 2015 at 5:32 PM Siva Chandra <[email protected]> wrote:
>> On Tue, Apr 14, 2015 at 3:08 PM, Greg Clayton <[email protected]> wrote:
>>> Author: gclayton
>>> Date: Tue Apr 14 17:08:17 2015
>>> New Revision: 234949
>>> 
>>> URL: http://llvm.org/viewvc/llvm-project?rev=234949&view=rev
>>> Log:
>>> MacOSX needs a space between $(ARCHFLAG) and $(ARCH) otherwise we try to 
>>> call clang with "-archx86_64" which doesn't work.
>>> 
>>> 
>>> Modified:
>>>    lldb/trunk/test/make/Makefile.rules
>>> 
>>> Modified: lldb/trunk/test/make/Makefile.rules
>>> URL: 
>>> http://llvm.org/viewvc/llvm-project/lldb/trunk/test/make/Makefile.rules?rev=234949&r1=234948&r2=234949&view=diff
>>> ==============================================================================
>>> --- lldb/trunk/test/make/Makefile.rules (original)
>>> +++ lldb/trunk/test/make/Makefile.rules Tue Apr 14 17:08:17 2015
>>> @@ -117,11 +117,11 @@ else
>>> endif
>>> 
>>> CFLAGS ?= -g -O0
>>> -CFLAGS += $(ARCHFLAG)$(ARCH) $(FRAMEWORK_INCLUDES) $(CFLAGS_EXTRAS) 
>>> -I$(LLDB_BASE_DIR)include
>>> +CFLAGS += $(ARCHFLAG) $(ARCH) $(FRAMEWORK_INCLUDES) $(CFLAGS_EXTRAS) 
>>> -I$(LLDB_BASE_DIR)include
>> 
>> This breaks linux as the arch flags now become "-m 32" or "-m 64"
>> which clang or GCC will not accept. How about making ARCHFLAG ?=
>> "-arch " on line 68?
>> 
>>> CFLAGS += -include $(THIS_FILE_DIR)test_common.h
>>> 
>>> # Use this one if you want to build one part of the result without debug 
>>> information:
>>> -CFLAGS_NO_DEBUG = -O0 $(ARCHFLAG)$(ARCH) $(FRAMEWORK_INCLUDES) 
>>> $(CFLAGS_EXTRAS)
>>> +CFLAGS_NO_DEBUG = -O0 $(ARCHFLAG) $(ARCH) $(FRAMEWORK_INCLUDES) 
>>> $(CFLAGS_EXTRAS)
>>> 
>>> CXXFLAGS += -std=c++11
>>> CXXFLAGS += $(CFLAGS)
>>> 
>>> 
>>> _______________________________________________
>>> lldb-commits mailing list
>>> [email protected]
>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
>> _______________________________________________
>> lldb-commits mailing list
>> [email protected]
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
>> 
>> _______________________________________________
>> lldb-commits mailing list
>> [email protected]
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
>> 
>> 
> 
> 
> _______________________________________________
> lldb-commits mailing list
> [email protected]
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits


_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits

Reply via email to