FS#63569 - [dmd] Do not use ENABLE_LTO

Attached to Project: Community Packages
Opened by Daniel Kozák (kozzi) - Tuesday, 27 August 2019, 09:58 GMT
Last edited by Dan Printzell (Wild) - Sunday, 15 September 2019, 23:43 GMT
Task Type Feature Request
Category Packages
Status Closed
Assigned To Dan Printzell (Wild)
Filipe Laíns (FFY00)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

In PKGBUILD there is ENABLE_LTO set to 1, which is wrong, it should not be set. It will break with 2.080.0+ releases.
ENABLE_LTO does not have any effect on current D compiler anyway, because in posix.mak it is only used for cxxfrontend which is not used anymore.
This task depends upon

Closed by  Dan Printzell (Wild)
Sunday, 15 September 2019, 23:43 GMT
Reason for closing:  Implemented
Additional comments about closing:  Added -flto=full with the help of sed.
https://git.archlinux.org/svntogit/commu nity.git/commit/trunk/PKGBUILD?h=package s/dmd&id=f7fa38a4401a02fd465f200e15b fb3d8c28b54fc
Comment by Daniel Kozák (kozzi) - Tuesday, 27 August 2019, 09:58 GMT
2.080.0+ should be 2.088.0+
Comment by Daniel Kozák (kozzi) - Tuesday, 27 August 2019, 10:27 GMT
Or you can try to enable LTO for D too with something like this:

diff --git a/src/posix.mak b/src/posix.mak
index 79f886dcc..b334e4969 100644
--- a/src/posix.mak
+++ b/src/posix.mak
@@ -307,6 +307,12 @@ ifneq (gdc, $(HOST_DMD_KIND))
override DFLAGS += -dip25
endif

+ifdef ENABLE_LTO
+ifeq ($(HOST_DMD_KIND), ldc)
+override DFLAGS += -flto=full
+endif
+endif
+
######## DMD frontend source files

FRONT_SRCS=$(addsuffix .d, $(addprefix $D/,access aggregate aliasthis apply argtypes argtypes_sysv_x64 arrayop \

Loading...