# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 name sdcc29 version 2.9.0 revision 2 categories lang platforms darwin license GPL-3+ maintainers nomaintainer description ANSI C compiler targeting Intel 8051, Maxim 80DS390, Zilog Z80 long_description SDCC is a freeware, retargettable, optimizing ANSI C \ compiler that targets the Intel 8051, Maxim 80DS390, and \ Zilog Z80 based MCUs. Work is in progress on supporting \ Motorola 68HC08 as well as Microchip PIC16 and PIC18 series. homepage http://sdcc.sourceforge.net/ master_sites sourceforge:project/sdcc/sdcc/${version} checksums md5 a6151ed328fd3bc48305ffbc628dc122 \ sha1 03308a233a67e7fdce3f7e4972acb8731ae42666 \ rmd160 38f23365b676132651f0322779bff498eb7e2b8d dist_subdir sdcc depends_build port:gputils depends_lib port:readline depends_run port:gputils use_bzip2 yes distname sdcc-src-${version} worksrcdir sdcc # requires "sizeof (long)" to be the a single value, so no universal; # universal isn't really required anyway. universal_variant no # Setting CPP explicitly is bad, because 'cpp' and # 'gcc -E' are not the same. configure.cpp {} # make sure to not use any already installed headers and libraries; # these are set in CPATH and LIBRARY_PATH anyway. configure.args-append --prefix=${prefix}/libexec/${name} configure.ldflags-delete "-L${prefix}/lib" configure.cppflags-delete "-I${prefix}/include" platform darwin 8 { depends_build-append port:gmake build.cmd ${prefix}/bin/gmake build.type gnu } platform darwin { if {${os.major} >= 11} { post-patch { # 10.7 provides 'getline()' already, but it is not # interchangeable with that provided by SDCC. change SDCC's # internal to "sdcc_getline", but not the #includes reinplace "/getline/s@getline @sdcc_getline @g" \ ${worksrcpath}/as/link/getline.h \ ${worksrcpath}/as/link/getline.c \ ${worksrcpath}/as/link/lklib.c \ ${worksrcpath}/as/link/lkrel.c \ ${worksrcpath}/as/link/lksdcclib.c } } }