Opened 2 years ago

Last modified 2 years ago

#56756 new defect

Build doesn't honor --bindir, --libexecdir, etc.

Reported by: ryandesign (Ryan Schmidt) Owned by:
Priority: Normal Milestone:
Component: base Version: 2.5.2
Keywords: Cc: mojca (Mojca Miklavec)
Port:

Description

./configure --help advertises these standard autoconf flags:

  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [PREFIX]
  --bindir=DIR            user executables [EPREFIX/bin]
  --sbindir=DIR           system admin executables [EPREFIX/sbin]
  --libexecdir=DIR        program executables [EPREFIX/libexec]
  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
  --libdir=DIR            object code libraries [EPREFIX/lib]
  --includedir=DIR        C header files [PREFIX/include]
  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
  --infodir=DIR           info documentation [DATAROOTDIR/info]
  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
  --mandir=DIR            man documentation [DATAROOTDIR/man]

But the MacPorts build doesn't work correctly if these flags are set to non-default values.

For example, if I specify --prefix=/prefix --bindir=/prefix/bindir, the build doesn't have an error, but the directory /prefix/bindir is not created, and the daemondo executable is installed as /prefix/bindir; all other binaries are installed in /prefix/bin.

Or if I specify --prefix=/prefix --libexecdir=/prefix/libexecdir, then the build fails with

chmod: ...vendor/vendor-destroot/prefix/libexec/macports/lib/tcllib*: No such file or directory
make[1]: *** [destroot-tcllib] Error 1

Change History (3)

comment:1 Changed 2 years ago by raimue (Rainer Müller)

Is there any use case for these configure arguments? I suggest we just get rid of them.

comment:2 Changed 2 years ago by ryandesign (Ryan Schmidt)

I don't know. They are a standard feature of autoconf. Presumably the developers of autoconf had reason to make this feature available.

Is there even a way to remove them from our configure script? I don't recall ever seeing an autoconf configure script without them.

comment:3 Changed 2 years ago by mojca (Mojca Miklavec)

Cc: mojca added
Note: See TracTickets for help on using tickets.