Bug 13386 – dmd .zip file download and posix.mak install targets lack usability

Status
NEW
Severity
enhancement
Priority
P4
Component
installer
Product
D
Version
D2
Platform
All
OS
Linux
Creation time
2014-08-28T00:20:50Z
Last change time
2025-01-02T15:46:19Z
Assigned to
No Owner
Creator
Marco Leise
Moved to GitHub: installer#676 →

Comments

Comment #0 by Marco.Leise — 2014-08-28T00:20:50Z
I've been using the bundled dmd, druntime and Phobos sources and documentation from the .zip file download on dlang.org for the past couple of years. The expectation for a Linux source archive is usually that you can run: ./configure && make sudo make install and the package is installed to the system's default locations (or a user defined prefix other than /usr). But this package is making it particularly hard. Quite a few things don't seem to match up at the seems between the 3 included posix.mak files: 1) druntime installs imports to /import, Phobos installs them to /src/phobos. The Ubuntu package respectively uses /include/dmd/druntime/import and /include/dmd/phobos. In any case the imports should not be placed in new root directories, and a /include sub-directory is the obvious choice. 2) The druntime & Phobos posix.mak will by default look for dmd in ../dmd/src/dmd, but it wont be there with the present directory structure, but in ../dmd/dmd. 3) The dmd posix.mak runs `cp ../ini/$(OS)/$(bin_dir)/dmd.conf $(INSTALL_DIR)/$(OS)/$(bin_dir)/dmd.conf'. But there is no ../ini folder with OS specific dmd.conf presets in the .zip. 4) The dmd binary installation path `$(INSTALL_DIR)/$(OS)/$(bin_dir)' is tailored towards creation of multi-OS bundles instead of the current OS. In case of GNU Linux, the correct procedure is described here: https://www.gnu.org/prep/standards/html_node/DESTDIR.html 5) The druntime and Phobos library paths are also affected by the above. E.g. they should be installed to $(DESTDIR)$(libdir)/. Right now the former is installed to $(INSTALL_DIR)/lib and the latter to $(INSTALL_DIR)/$(OS)/lib$(MODEL). 6) Concerning SONAMEs: According to http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html, we should add another symlink called libphobos2.so.0.66, which would be the "fully-qualified soname" opposed to the "realname" (including non-breaking bug fix revisions) and "linker name" (no version). Is there a reason we don't have that soname symlink?
Comment #1 by robert.schadek — 2025-01-02T15:46:19Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/installer/issues/676 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB