[LLVMbugs] [Bug 14396] New: linux x86_64: tools/clang/runtime/compiler-rt/Makefile missing endif :204

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Nov 20 15:27:36 PST 2012


http://llvm.org/bugs/show_bug.cgi?id=14396

             Bug #: 14396
           Summary: linux x86_64: tools/clang/runtime/compiler-rt/Makefile
                    missing endif :204
           Product: Build scripts
           Version: trunk
          Platform: Other
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Makefiles
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: peeter.joot at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


Build proceeds without error until:

`/home/hotellnx99/peeterj/tmp/clang/build/tools/clang/runtime'
make[4]: Entering directory
`/home/hotellnx99/peeterj/tmp/clang/build/tools/clang/runtime/compiler-rt'
Makefile:204: *** missing `endif'.  Stop.
make[4]: Leaving directory
`/home/hotellnx99/peeterj/tmp/clang/build/tools/clang/runtime/compiler-rt'
make[3]: *** [compiler-rt/.makeall] Error 2

which is at this point in the Makefile:

    151 # Expand rules for copying/installing each individual library. We can't
use
    152 # implicit rules here because we need to match against multiple things.
    153 define RuntimeLibraryTemplate
    154 $(PROJ_OBJ_DIR)/clang_$1/%/libcompiler_rt.a: BuildRuntimeLibraries
    155    @true
    156 $(PROJ_OBJ_DIR)/clang_$1/%/libcompiler_rt.so: BuildRuntimeLibraries
    157    @true
    158 $(PROJ_OBJ_DIR)/clang_$1/%/libcompiler_rt.dylib: BuildRuntimeLibraries
    159    @true
    160 .PRECIOUS: $(PROJ_OBJ_DIR)/clang_$1/%/libcompiler_rt.a
...
    200 # Rule to install runtime libraries.
    201 RuntimeLibraryInstall.$1: \
    202      
$(RuntimeLibrary.$1.Configs:%=$(PROJ_resources_lib)/$1/libclang_rt.%)
    203 .PHONY: RuntimeLibraryInstall.$1
>>> 204 endef
    205 $(foreach lib,$(RuntimeDirs), $(eval $(call
RuntimeLibraryTemplate,$(lib))))
    206

(after a large define/endef block).  The odd part about the error is that
everything looks matched.  Indenting the output of 

grep -ne '^if' -e '^end' -e '^def' tools/clang/runtime/compiler-rt/Makefile

shows this:

64:ifneq ($(LLVM_CROSS_COMPILING),1)
   65:ifneq ($(CLANG_NO_RUNTIME),1)
      66:ifeq ($(shell test -d $(COMPILERRT_SRC_ROOT) && echo OK),OK)
         74:ifeq ($(OS),Darwin)
         81:endif

         84:ifeq ($(OS),Linux)
            100:ifeq ($(ARCH),x86)
            103:endif

            105:ifeq ($(ARCH),x86_64)
               114:ifeq ($(call
TryCompile,$(ToolDir)/clang,$(test_source),-m32),0)
               116:endif

               117:ifneq ($(LLVM_ANDROID_TOOLCHAIN_DIR),)
               119:endif
            120:endif
         122:endif

         153:define RuntimeLibraryTemplate
         204:endef
      212:endif
   213:endif
214:endif

Similarly, the included Makefile in ../../ also looks okay:

64:ifneq ($(LLVM_CROSS_COMPILING),1)
   65:ifneq ($(CLANG_NO_RUNTIME),1)
      66:ifeq ($(shell test -d $(COMPILERRT_SRC_ROOT) && echo OK),OK)

         74:ifeq ($(OS),Darwin)
         81:endif

         84:ifeq ($(OS),Linux)
            100:ifeq ($(ARCH),x86)
            103:endif

            105:ifeq ($(ARCH),x86_64)

               114:ifeq ($(call
TryCompile,$(ToolDir)/clang,$(test_source),-m32),0)
               116:endif

               117:ifneq ($(LLVM_ANDROID_TOOLCHAIN_DIR),)
               119:endif
            120:endif
         122:endif

         153:define RuntimeLibraryTemplate
         204:endef
      212:endif
   213:endif
214:endif

This is a build of the trunk, configured with:

../llvm/configure --prefix=$HOME/local --enable-optimized
--with-gcc-toolchain=$HOME/local --with-extra-ld-options
-Wl,-R,$HOME/local/lib64

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list