Opened 12 years ago

Closed 12 years ago

Last modified 11 years ago

#15724 closed defect (fixed)

llvm: docs violate mtree

Reported by: ryandesign (Ryan Schmidt) Owned by: erickt@…
Priority: Normal Milestone:
Component: ports Version: 1.7.0
Keywords: Cc:
Port:

Description

llvm installs documentation into ${prefix}/docs/llvm which is not a standard location as far as MacPorts is concerned so it shows this error:

--->  Fetching llvm
--->  Verifying checksum(s) for llvm
--->  Extracting llvm
--->  Configuring llvm
--->  Building llvm with target tools-only
--->  Staging llvm into destroot
Warning: violation by /mp/docs
Warning: llvm violates the layout of the ports-filesystems!
Warning: Please fix or indicate this misbehavior (if it is intended), it will be an error in future releases!
--->  Installing llvm @2.2_0
--->  Activating llvm @2.2_0
--->  Cleaning llvm

It would be better if llvm would install documentation in the same place as other ports, e.g. ${prefix}/share/doc/${name}-${version}

When this change is made, the port revision should be incremented so everyone gets the change.

Change History (2)

comment:1 Changed 12 years ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: newclosed

I tried adding --docdir=${prefix}/share/doc/${name}-${version} to the configure.args but it said

$ port configure llvm
--->  Fetching llvm
--->  Verifying checksum(s) for llvm
--->  Extracting llvm
--->  Applying patches to llvm
--->  Configuring llvm
Error: Target org.macports.configure returned: configure failure: shell command " cd "/mp/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build" && ../llvm-2.3/configure --prefix=/mp --enable-optimized --enable-jit --docdir=/mp/share/doc/llvm-2.3 " returned error 1
Command output: checking for __dso_handle... yes
checking whether llvm-gcc is sane... no
configure: creating ./config.status
config.status: creating Makefile.config
config.status: creating llvm.spec
config.status: creating docs/doxygen.cfg
config.status: creating tools/llvm-config/llvm-config.in
config.status: creating include/llvm/Config/config.h
config.status: creating include/llvm/Support/DataTypes.h
config.status: creating include/llvm/ADT/hash_map
config.status: creating include/llvm/ADT/hash_set
config.status: creating include/llvm/ADT/iterator
config.status: executing setup commands
config.status: executing Makefile commands
config.status: executing Makefile.common commands
config.status: executing examples/Makefile commands
config.status: executing lib/Makefile commands
config.status: executing runtime/Makefile commands
config.status: executing test/Makefile commands
config.status: executing test/Makefile.tests commands
config.status: executing tools/Makefile commands
config.status: executing utils/Makefile commands
config.status: executing projects/Makefile commands
config.status: executing bindings/Makefile commands
config.status: executing bindings/ocaml/Makefile.ocaml commands
=== configuring in projects/sample (/mp/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/projects/sample)
configure: running /bin/sh ../../../llvm-2.3/projects/sample/configure --prefix=/mp  '--enable-optimized' '--enable-jit' '--docdir=/mp/share/doc/llvm-2.3' 'CC=/usr/bin/gcc-4.0' 'CFLAGS=-O2' 'CPP=/usr/bin/cpp-4.0' 'CXX=/usr/bin/g++-4.0' 'CXXFLAGS=-O2' 'FFLAGS=-O2' --cache-file=/dev/null --srcdir=../../../llvm-2.3/projects/sample
configure: error: unrecognized option: --docdir=/mp/share/doc/llvm-2.3
Try `../../../llvm-2.3/projects/sample/configure --help' for more information.
configure: error: ../../../llvm-2.3/projects/sample/configure failed for projects/sample

Error: Status 1 encountered during processing.
$

which is rude since ./configure --help (at the root of the llvm source directory) clearly shows --docdir=dir as a valid option.

So since that didn't work I had to patch it. Fixed in r38387.

comment:2 Changed 11 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.