44 lines
1.5 KiB
Makefile
44 lines
1.5 KiB
Makefile
# $NetBSD: hacks.mk,v 1.2 2019/02/07 10:07:21 mrg Exp $
|
|
|
|
.if !defined(RUBY24_BASE_HACKS_MK)
|
|
RUBY24_BASE_HACKS_MK= defined
|
|
|
|
.include "../../mk/compiler.mk"
|
|
|
|
### [ Sun Jun 5 10:05:39 CEST 2005 : seb ]
|
|
### On NetBSD/sparc64, gcc optimisation, at least for version 3.3.3,
|
|
### produces segmentation faulting miniruby binary.
|
|
### Also note that `-O' level optimisation produces a miniruby
|
|
### binary that loops while running the installation scripts.
|
|
###
|
|
.if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64)
|
|
. if !empty(CC_VERSION:Mgcc-3.3.*)
|
|
PKG_HACKS+= optimisation
|
|
BUILDLINK_TRANSFORM+= rm:-O[0-9]*
|
|
. endif
|
|
### ruby193 binary built on NetBSD/sparc64 with gcc 4.5.1 and the default -O2
|
|
### dumps core during generating RDocs.
|
|
### Using -O1 works around.
|
|
. if !empty(CC_VERSION:Mgcc-4.5.*)
|
|
PKG_HACKS+= optimisation
|
|
BUILDLINK_TRANSFORM+= opt:-O2:-O1
|
|
. endif
|
|
.endif
|
|
|
|
# On NetBSD/sh3el 6.0, the default -Os causes an error on compiling node.c:
|
|
# {standard input}: Assembler messages: {standard input}:1458: \
|
|
# Error: pcrel too far
|
|
# and -O1 works around.
|
|
.if !empty(MACHINE_PLATFORM:MNetBSD-*-sh3*) && !empty(CC_VERSION:Mgcc-4.5.*)
|
|
PKG_HACKS+= optimisation
|
|
BUILDLINK_TRANSFORM+= opt:-Os:-O1 rm:-freorder-blocks
|
|
.endif
|
|
|
|
# On NetBSD/aarch64, gcc optimisation produces segmentation faulting
|
|
# miniruby binary.
|
|
.if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) && !empty(CC_VERSION:Mgcc-[67].*)
|
|
PKG_HACKS+= optimisation
|
|
BUILDLINK_TRANSFORM+= rm:-fomit-frame-pointer
|
|
.endif
|
|
|
|
.endif # RUBY24_BASE_HACKS_MK
|