Tweak science/fastcap version 2.0.w.011109
[dports.git] / science / fastcap / Makefile
1 # Created by: Pedro Giffuni <giffunip@asme.org>
2 # $FreeBSD$
3
4 PORTNAME=       fastcap
5 DISTVERSION=    2.0wr-011109
6 CATEGORIES=     science cad
7 MASTER_SITES=   http://www.wrcad.com/ftp/pub/ LOCAL/bf
8
9 MAINTAINER=     ports@FreeBSD.org
10 COMMENT=        Three-dimensional capacitance extraction program
11
12 HAS_CONFIGURE=  yes
13 CONFIGURE_SCRIPT=       config
14 WRKSRC=         ${WRKDIR}/fastcap-2.0wr
15
16 BINFILES=       busgen capgen cubegen fastcap pipedgen pyragen
17
18 OPTIONS_DEFINE= DOCS EXAMPLES
19
20 .include <bsd.port.options.mk>
21
22 post-patch:
23         @${REINPLACE_CMD} -e 's,TYPE=other,TYPE=4,' \
24                 ${WRKSRC}/config
25         @${REINPLACE_CMD} -Ee '/CFLAGS =/{s/=/+=/;s/-O[[:digit:]]*//;}' \
26                 ${WRKSRC}/src/Makefile.4
27 # Minimal changes to fix the Clang build (there should be a more thorough
28 # clean-up, to correct types of functions, remove implicit declarations, fix
29 # formatting, add missing returns, etc.)
30         @${REINPLACE_CMD} -E -e 's,^mul(Up|Down),void &,' \
31                 ${WRKSRC}/src/mulDo.c
32         @${REINPLACE_CMD} -e 's,^mulMatUp,void &,' \
33                 ${WRKSRC}/src/mulMats.c
34         @${REINPLACE_CMD} -e 's,^static getnbrs,static void getnbrs,' \
35                 ${WRKSRC}/src/mulSetup.c
36 # Change "cd foo ; $(MAKE)" into "$(MAKE) -C foo" to unbreak parallel builds
37         @${REINPLACE_CMD} -E 's,cd (.+) ; (\$$\(MAKE\)),\2 -C \1,' \
38                 ${WRKSRC}/Makefile
39 # Avoid clashing of generated temporary files, crucial for parallel builds
40         @${REINPLACE_CMD} -e 's,temp\.out,$$@.&,' ${WRKSRC}/src/Makefile*
41
42 do-install:
43         ${INSTALL_PROGRAM} ${BINFILES:S,^,${WRKSRC}/bin/,} ${STAGEDIR}${PREFIX}/bin
44         @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
45         ${INSTALL_DATA} ${WRKSRC}/examples/* ${STAGEDIR}${EXAMPLESDIR}
46         @${MKDIR} ${STAGEDIR}${DOCSDIR}
47         ${CAT} ${WRKSRC}/README ${WRKSRC}/README.mit > ${STAGEDIR}${DOCSDIR}/readme
48         ${INSTALL_DATA} ${WRKSRC}/doc/*.ps ${STAGEDIR}${DOCSDIR}
49         ${GZIP_CMD} ${STAGEDIR}${DOCSDIR}/*
50
51 .include <bsd.port.mk>