5 DISTVERSIONPREFIX= src-
10 MAINTAINER= tijl@FreeBSD.org
11 COMMENT= Small Device C Compiler
15 BUILD_DEPENDS= ${LOCALBASE}/include/boost/graph/adjacency_list.hpp:devel/boost-libs
17 CONFLICTS_INSTALL= sdcc-[0-9]* sdcc-devel-[0-9]*
19 USES= gmake readline:port tar:bzip2
21 OPTIONS_DEFINE= DEVLIB DOCS UCSIM
22 OPTIONS_MULTI= TARGETS
23 OPTIONS_MULTI_TARGETS= HC08 MCS51 PIC STM8 Z80
24 OPTIONS_DEFAULT= DEVLIB UCSIM HC08 MCS51 PIC STM8 Z80
25 DEVLIB_DESC= Device libraries
26 HC08_DESC= Freescale 68HC08/S08
27 MCS51_DESC= Intel MCS51, Maxim DS80C390/DS80C400
28 PIC_DESC= Microchip PIC
29 STM8_DESC= STMicroelectronics STM8
30 UCSIM_DESC= The ucSim simulator
31 Z80_DESC= Zilog Z80/Z180/GBZ80, Rabbit 2000/3000, Toshiba TLCS-90
33 CONFIGURE_ARGS= --disable-avr --disable-install-libbfd --disable-werror \
34 --disable-st7 docdir=${DOCSDIR} sdcc_cv_c_fms_extensions=no
37 WRKSRC= ${WRKDIR}/sdcc-${DISTVERSION}
40 DEVLIB_CONFIGURE_OFF= --disable-device-lib
41 HC08_CONFIGURE_OFF= --disable-hc08 --disable-hc08-port \
43 MCS51_CONFIGURE_OFF= --disable-51 --disable-mcs51-port \
44 --disable-ds390-port --disable-ds400-port
45 PIC_BUILD_DEPENDS= gputils>=1.2.0:devel/gputils
46 PIC_RUN_DEPENDS= gpasm:devel/gputils
47 PIC_CONFIGURE_OFF= --disable-pic14-port --disable-pic16-port
48 STM8_CONFIGURE_OFF= --disable-stm8 --disable-stm8-port
49 UCSIM_CONFIGURE_OFF= --disable-ucsim
50 Z80_CONFIGURE_OFF= --disable-z80 --disable-z80-port \
51 --disable-z180-port --disable-gbz80-port \
52 --disable-r2k-port --disable-r3ka-port \
55 .include <bsd.port.options.mk>
57 .if ${ARCH} == "x86_64"
58 CONFIGURE_TARGET= x86_64-portbld-${OPSYS:tl}${OSREL}
62 @${REINPLACE_CMD} '/install:/s/:.*/:/' \
63 ${WRKSRC}/Makefile.in \
64 ${WRKSRC}/support/sdbinutils/libiberty/Makefile.in
65 @${REINPLACE_CMD} 's/[[:<:]]ARCH[[:>:]]/PICARCH/g' \
66 ${WRKSRC}/device/lib/pic14/Makefile.common \
67 ${WRKSRC}/device/lib/pic14/Makefile.in \
68 ${WRKSRC}/device/lib/pic14/configure \
69 ${WRKSRC}/device/lib/pic14/libm/Makefile.in \
70 ${WRKSRC}/device/lib/pic14/libsdcc/enhanced/Makefile.in \
71 ${WRKSRC}/device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in \
72 ${WRKSRC}/device/lib/pic14/libsdcc/regular/Makefile.in \
73 ${WRKSRC}/device/lib/pic16/Makefile.in \
74 ${WRKSRC}/device/lib/pic16/configure \
75 ${WRKSRC}/device/lib/pic16/debug/Makefile.in \
76 ${WRKSRC}/device/lib/pic16/libc/Makefile.in \
77 ${WRKSRC}/device/lib/pic16/libio/Makefile.in \
78 ${WRKSRC}/device/lib/pic16/libm/Makefile.in \
79 ${WRKSRC}/device/lib/pic16/libsdcc/Makefile.in \
80 ${WRKSRC}/device/lib/pic16/startup/Makefile.in \
81 ${WRKSRC}/device/non-free/lib/pic14/Makefile.common.in \
82 ${WRKSRC}/device/non-free/lib/pic14/Makefile.rules \
83 ${WRKSRC}/device/non-free/lib/pic16/Makefile.in \
84 ${WRKSRC}/device/non-free/lib/pic16/configure \
85 ${WRKSRC}/device/non-free/lib/pic16/libdev/Makefile.in
86 .if ! ${PORT_OPTIONS:MDOCS}
87 @${REINPLACE_CMD} 's, [a-z-]*doc,,' \
88 ${WRKSRC}/Makefile.in \
89 ${WRKSRC}/sim/ucsim/packages_in.mk
93 ${FIND} -d ${STAGEDIR}${DATADIR} -type d -empty -delete
95 .include <bsd.port.mk>