aboutsummaryrefslogtreecommitdiff
path: root/lang/smarteiffel/Makefile
blob: e5a5cbfb2c302070761bb665663b0a3bbc30d054 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# New ports collection makefile for:	SmartEiffel
# Date created:				Wed Dec 22 18:20:05 CET 1999
# Whom:					berend@pobox.com
#
# $FreeBSD$
#

PORTNAME=	smarteiffel
DISTVERSION=	1.2r7
CATEGORIES=	lang
MASTER_SITES=	http://except.com.ar/downloads/smarteiffel/
DISTNAME=	SmartEiffel-${DISTVERSION}

MAINTAINER=	berend@pobox.com
COMMENT=	SmartEiffel, the GNU compiler for the object-oriented language Eiffel

WRKSRC=		${WRKDIR}/SmartEiffel12

# We install in this directory
SEDIR=		${PREFIX}/${PORTNAME}-${DISTVERSION}

# We alias a directory to the installation directory
# so it is possible to easily switch between different builds
ALIASDIR=	${PREFIX}/SmartEiffel

# SmartEiffel needs this to find system.se
MAKE_ENV+=	SmartEiffel=${WRKSRC}/sys/system.se
ALL_TARGET=
PLIST_SUB+=	PORTVERSION=${DISTVERSION}

SUB_FILES=	pkg-install pkg-message

.include <bsd.port.pre.mk>

.if ${OSVERSION} > 700000
BROKEN=		does not install
.endif

post-patch:
	@${REINPLACE_CMD} -i '' \
		-e 's|^.*c_compiler_options:.*$$|c_compiler_options: ${CFLAGS}|' \
		-e 's|^.*cpp_compiler_options:.*$$|cpp_compiler_options: ${CXXFLAGS}|' \
			${WRKSRC}/install/gcc.rc

# Make sure we can set the symbolic link SmartEiffel
# to the actual release directory.
do-install:
	@(if ${TEST} -e ${ALIASDIR} ; then \
		if ! ${TEST} -L ${ALIASDIR} ; then \
		${ECHO} "Make sure ${ALIASDIR} is a symbolic link"; \
		${ECHO} "or does not exist. This directory will point to "; \
		${ECHO} "the actual SmartEiffel installation directory."; \
		exit 1; \
		fi; \
		${RM} ${ALIASDIR}; \
	fi; \
	${LN} -fs ${SEDIR} ${ALIASDIR})
	@(if ${TEST} -e ${SEDIR} ; then ${RM} -rf ${SEDIR}; fi; \
		${MKDIR} ${SEDIR}; \
		${CP} -pR ${WRKSRC}/* ${SEDIR})
	@${SED} -i .orig -e "s,${WRKSRC},${SEDIR},g" ${SEDIR}/sys/system.se
	@${RM} ${SEDIR}/sys/system.se.orig
	@${SED} -i .orig -e "s,${WRKSRC},${SEDIR},g" ${SEDIR}/lib/loadpath.se
	@${RM} ${SEDIR}/lib/loadpath.se.orig
	@${SED} -i .orig -e "s,${WRKSRC},${SEDIR},g" ${SEDIR}/tools/loadpath.se
	@${RM} ${SEDIR}/tools/loadpath.se.orig
	@${SED} -i .orig -e "s,${WRKSRC},${SEDIR},g" ${SEDIR}/tutorial/loadpath.se
	@${RM} ${SEDIR}/tutorial/loadpath.se.orig

	@${CAT} ${PKGMESSAGE}

.include <bsd.port.post.mk>