b8e00ee129
Changes: * Compiler and runtime library have been improved to support big-endian systems. Thanks go to Brian Callahan, for his support and for providing access to his PowerPC Macintosh under OpenBSD. * The list of source files and the chapter about the defines used in version.h have been improved in src/read_me.txt. * The library tls.s7i has been improved to avoid raising an exception, when the remote side closes the socket. * The program chkccomp.c has been improved to write defines for CHECK_INT_DIV_BY_ZERO, INT_DIV_BY_ZERO_SIGNALS and DO_SIGFPE_WITH_DIV_BY_ZERO to version.h. * Documentation comments have been added or improved in fillib.c, int_rtl.c, soclib.c, tim_dos.c, tim_unx.c, tim_win.c, ut8lib.c, ut8_rtl.c, tls.s7i and bytedata.s7i. * The generic compare functions bigCmpGeneric, bstCmpGeneric, chrCmpGeneric, intCmpGeneric, rflCmpGeneric, setCmpGeneric, strCmpGeneric and typCmpGeneric have been improved to work endianness neutral. Now they work correct on little- and big-endian systems. * The generic create functions bigCreateGeneric, bstCreateGeneric, drwCreateGeneric, rflCreateGeneric, setCreateGeneric, strCreateGeneric and itfCreateGeneric have been improved to work endianness neutral. Now they work correct on little- and big-endian systems. * The new generic copy functions bigCpyGeneric, bstCpyGeneric, drwCpyGeneric, fltCpyGeneric, rflCpyGeneric, setCpyGeneric and strCpyGeneric have been added. This functions work endianness neutral. * The new generic destroy functions bigDestrGeneric, drwDestrGeneric, rflDestrGeneric, setDestrGeneric and strDestrGeneric have been added. This functions work endianness neutral. * The functions uintCmpGeneric, intCreateGeneric and intDestrGeneric have been renamed to genericCmp, genericCreate respectively genericDestr. * The functions genericCpy, ptrCmp, ptrCmpGeneric, ptrCpyGeneric and ptrCreateGeneric have been added to int_rtl.c. * The function cmdConfigValue in cmd_rtl.c has been improved to support the config value DO_SIGFPE_WITH_DIV_BY_ZERO. * The handling of the option -l in processOptions (file s7.c) has been improved to work endianness neutral. * Several functions have been optimized: In infile.c: get_file_name and get_file_name_ustri In prg_comp.c: prgSyobject In rfllib.c: rfl_elemcpy and rfl_idx In rfl_data.c: rflElemcpy, rflIdx and rflTail * The function get_ident and the macro IDENT_TABLE have been changed to have an additional progtype argument. * The function typNum in typ_data.c has been improved to use a hashtable. * In typlib.c the functions typ_num and typ_str have been improved to call typNum respectively typStr. * Support for the actions ACT_ICONV and ACT_ORD has been added to interpreter, compiler and runtime library. * The function id_string2 has been added to datautl.c, and used in ref_data.c and typ_data.c.
77 lines
2.1 KiB
Makefile
77 lines
2.1 KiB
Makefile
# Created by: gahr
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= seed7
|
|
DISTVERSION= 05_20131027
|
|
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
|
|
|
|
OPTIONS_DEFINE= DOCS EXAMPLES
|
|
|
|
USE_XORG= x11
|
|
|
|
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 ${STAGEDIR}${PREFIX}/bin
|
|
${INSTALL_PROGRAM} ${WRKSRC}/../prg/s7c ${STAGEDIR}${PREFIX}/bin
|
|
# install seed7 library
|
|
${INSTALL} -d ${STAGEDIR}${SEED7_LIBRARY}
|
|
cd ${WRKSRC}/../lib && ${COPYTREE_SHARE} '*.s7i' ${STAGEDIR}${SEED7_LIBRARY}
|
|
# install static libraries
|
|
${INSTALL} -d ${STAGEDIR}${S7_LIB_DIR}
|
|
.for s7_lib in ${S7_LIBS}
|
|
${INSTALL_DATA} ${WRKSRC}/../bin/${s7_lib} ${STAGEDIR}${S7_LIB_DIR}
|
|
.endfor
|
|
# install PORTDOCS
|
|
.if ${PORT_OPTIONS:MDOCS}
|
|
${INSTALL} -d ${STAGEDIR}${DOCSDIR}
|
|
cd ${WRKSRC}/../doc && ${COPYTREE_SHARE} \* ${STAGEDIR}${DOCSDIR}
|
|
.endif
|
|
# install PORTEXAMPLES
|
|
.if ${PORT_OPTIONS:MEXAMPLES}
|
|
${INSTALL} -d ${STAGEDIR}${EXAMPLESDIR}
|
|
cd ${WRKSRC}/../prg && ${COPYTREE_SHARE} '*.dna *.sd7 *.dat *.s7i' ${STAGEDIR}${EXAMPLESDIR}
|
|
.endif
|
|
# insall man pages
|
|
${INSTALL_DATA} ${WRKSRC}/../doc/s7.1 ${STAGEDIR}${PREFIX}/man/man1
|
|
${INSTALL_DATA} ${WRKSRC}/../doc/s7c.1 ${STAGEDIR}${PREFIX}/man/man1
|
|
|
|
regression-test: build
|
|
cd ${WRKSRC} && ${MAKE} -f ${MAKEFILE} test
|
|
|
|
.include <bsd.port.mk>
|