freebsd-ports/lang/seed7/Makefile
Pietro Cerutti 0dbb1fb2a7 - Update to 05_20130908
Changes:

  * The compiler has been improved to use charvalue instead of
    intvalue, when characters are initialized. Thanks go to Brian
    Callahan, for reporting the bug. Btw.: Brian Callahan created an
    openBSD port for Seed7.
  * The makefile mk_freebsd.mk has been added to support compilation
    under freeBSD. Thanks go to Pietro Cerutti, for providing it.
  * The makefiles mk_clang.mak and mk_freebsd.mk have been improved
    to use the options -ffunction-sections, -fdata-sections and
    *Wl,--strip-debug.
  * The functions bStriLe2BigInt, bytesLe2BigInt, bStriBe2BigInt,
    bytesBe2BigInt, bStriLe, bytesLe, bStriBe and bytesBe have been
    added to bytedata.s7i. This functions convert between sequences
    of bytes and bigInteger numbers.
  * In bytedata.s7i the functions bytesLeAsInt and bytesBeAsInt have
    been renamed to bytesLe2Int respectively bytesBe2Int.
  * Parameter names have been added to seed7_05.s7i, graph_file.s7i,
    graph.s7i, reference.s7i, pac.sd7, tetg.sd7, tet.sd7 and wiz.sd7.
  * Checks for the Karatsuba multiplication and the functions bytesBe,
    bytesLe, bytesBe2BigInt and bytesLe2BigInt have been added to
    chkbig.sd7.
  * Checks for set membership in character sets have been added to
    chkset.sd7.
  * The readability of the bitset initialisation in the compiler (s7c)
    has been improved.
  * Interpreter and compiler have been improved to support the new
    actions BIG_FROM_BSTRI_BE, BIG_FROM_BSTRI_LE, BIG_TO_BSTRI_BE and
    BIG_TO_BSTRI_LE.
  * The functions bigFromBytesBe, bigFromBytesLe, bigFromBStriBe,
    bigFromBStriLe, bigToBStriBe and bigToBStriLe have been added to
    both, big_gmp.c and big_rtl.c.
  * In big_gmp.c and big_rtl.c the function bigImport has been
    rewritten to use bigFromBytesBe.
  * The readability of the function uint2_mult in int_rtl.c has been
    improved.
  * The program chkccomp.c has been improved to check for a ones
    complement inttype and if casting can be used to get the element
    of a union.
  * Several makefiles have been adjusted to use 'cp -p' instead of
    'cp -a'. The cp command openBSD does not support -a.
  * The function bigRand in big_rtl.c has been improved to avoid that
    a random number is outside the required range.
2013-09-09 09:31:22 +00:00

76 lines
2 KiB
Makefile

# Created by: gahr
# $FreeBSD$
PORTNAME= seed7
DISTVERSION= 05_20130908
CATEGORIES= lang
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${DISTNAME}/
DISTNAME= ${PORTNAME}_${DISTVERSION}
EXTRACT_SUFX= .tgz
MAINTAINER= gahr@FreeBSD.org
COMMENT= High-level, extensible programming language
LICENSE= LGPL21
USE_XORG= x11
MAN1= s7.1 s7c.1
ONLY_FOR_ARCHS= i386 amd64 sparc64
WRKSRC= ${WRKDIR}/${PORTNAME}/src
MAKEFILE= makefile
MAKE_ENV+= S7_LIB_DIR=${S7_LIB_DIR} \
SEED7_LIBRARY=${SEED7_LIBRARY} \
C_COMPILER=${CC} \
CPLUSPLUS_COMPILER=${CPP}
SEED7_LIBRARY= ${PREFIX}/lib/${PORTNAME}/lib
S7_LIB_DIR= ${PREFIX}/lib/${PORTNAME}/bin
S7_LIBS= s7_comp.a s7_con.a s7_draw.a s7_data.a seed7_05.a
PORTEXAMPLES= *
PORTDOCS= *
.include <bsd.port.options.mk>
MAKEFILE= mk_freebsd.mk
post-patch:
${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g;' ${WRKSRC}/${MAKEFILE}
# ${REINPLACE_CMD} -e '/FLOATTYPE_DOUBLE/s|undef|define|' ${WRKSRC}/config.h
do-build:
cd ${WRKSRC} && ${MAKE} -f ${MAKEFILE} depend
cd ${WRKSRC} && ${MAKE} -f ${MAKEFILE} s7 s7c
do-install:
# install interpreter and compiler
${INSTALL_PROGRAM} ${WRKSRC}/../bin/s7 ${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKSRC}/../prg/s7c ${PREFIX}/bin
# install seed7 library
${INSTALL} -d ${SEED7_LIBRARY}
cd ${WRKSRC}/../lib && ${COPYTREE_SHARE} '*.s7i' ${SEED7_LIBRARY}
# install static libraries
${INSTALL} -d ${S7_LIB_DIR}
.for s7_lib in ${S7_LIBS}
${INSTALL_DATA} ${WRKSRC}/../bin/${s7_lib} ${S7_LIB_DIR}
.endfor
# install PORTDOCS
.if ${PORT_OPTIONS:MDOCS}
${INSTALL} -d ${DOCSDIR}
cd ${WRKSRC}/../doc && ${COPYTREE_SHARE} \* ${DOCSDIR}
.endif
# install PORTEXAMPLES
.if ${PORT_OPTIONS:MEXAMPLES}
${INSTALL} -d ${EXAMPLESDIR}
cd ${WRKSRC}/../prg && ${COPYTREE_SHARE} '*.dna *.sd7 *.dat *.s7i' ${EXAMPLESDIR}
.endif
# insall man pages
${INSTALL_DATA} ${WRKSRC}/../doc/s7.1 ${MANPREFIX}/man/man1
${INSTALL_DATA} ${WRKSRC}/../doc/s7c.1 ${MANPREFIX}/man/man1
regression-test: build
cd ${WRKSRC} && ${MAKE} -f ${MAKEFILE} test
.include <bsd.port.mk>