Port of the DJGPP2 libraries.

PR:		4008
Submitted by:	Joel Sutton <sutton@aardvark.apana.org.au>
This commit is contained in:
Thomas Gellekum 1997-08-13 09:38:10 +00:00
parent cd337b5ab4
commit fc9c8ce3b5
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=7561
9 changed files with 323 additions and 0 deletions

View File

@ -0,0 +1,87 @@
# New ports collection makefile for: djgpp2 cross compiler kit
# Version required: 2.01
# Date created: Sun Jun 22 16:57:39 EST 1997
# Whom: Joel Sutton <sutton@aardvark.apana.org.au>
# FreeBSD Version: 2.2.1-RELEASE
#
# $Id$
#
DISTNAME= djcrx201
PKGNAME= crossgo32-djgpp2-2.01
CATEGORIES= devel
MASTER_SITES= ftp://ftp.tas.gov.au/pc/simtelnet/gnu/djgpp/v2/ \
ftp://ftp.cdrom.com/pub/simtelnet/gnu/djgpp/v2/
EXTRACT_SUFX= .zip
MAINTAINER= sutton@aardvark.apana.org.au
FETCH_DEPENDS= unzip:${PORTSDIR}/archivers/zip
RUN_DEPENDS= i386-go32-gcc:${PORTSDIR}/devel/crossgo32
DIST_SUBDIR= djgpp
EXTRACT_CMD= unzip
EXTRACT_BEFORE_ARGS= -La
# Source directories
#
NO_WRKSUBDIR= yes
DJGPPLIB= ${WRKSRC}/lib
DJGPPINCLUDE= ${WRKSRC}/include
DJGPPDOC= ${WRKSRC}/cross
DJGPPINFO= ${WRKSRC}/info
STUBSRC= ${WRKSRC}/src/stub
# Install directories
#
DOCDIR= ${PREFIX}/share/doc/djgpp2
CROSSGO= ${PREFIX}/i386-go32
CROSSGOGCC= ${PREFIX}/lib/gcc-lib/i386-go32/2.7.2.2/
CROSSGOLIB= ${PREFIX}/i386-go32/lib
CROSSGOINCLUDE= ${PREFIX}/i386-go32/include
post-extract:
${CP} ${FILESDIR}/Makefile ${STUBSRC}/
post-patch:
-${RM} ${DJGPPLIB}/*.orig
do-build:
@${ECHO_MSG} "===> Building stub utilities"
@cd ${STUBSRC} ;\
make all
pre-install:
@${ECHO_MSG} "===> Moving old crossgo libs away"
@cd ${CROSSGO} ;\
${MV} lib lib-newlib ;\
${MV} include include-newlib
@cd ${CROSSGOGCC} ;\
${MKDIR} old-newlib ;\
${MV} include old-newlib ;\
${MV} libgcc.a old-newlib ;\
${MV} specs old-newlib ;\
do-install:
@${ECHO_MSG} "===> Installing binaries"
${INSTALL_PROGRAM} ${STUBSRC}/stubify ${PREFIX}/bin/i386-go32-stubify
${INSTALL_PROGRAM} ${STUBSRC}/stubedit ${PREFIX}/bin/i386-go32-stubedit
@${ECHO_MSG} "===> Installing libraries"
${CP} -R ${DJGPPLIB} ${CROSSGOLIB}
@${ECHO_MSG} "===> Installing include files"
${CP} -R ${DJGPPINCLUDE} ${CROSSGOINCLUDE}
@${ECHO_MSG} "===> Installing info files"
${INSTALL_DATA} ${DJGPPINFO}/libc.inf ${PREFIX}/info/libc.info
.if !defined(NOPORTDOCS)
@${ECHO_MSG} "===> Installing documentation into ${DOCDIR}"
${MKDIR} ${DOCDIR}
${INSTALL_DATA} ${DJGPPDOC}/install ${DOCDIR}/
${INSTALL_DATA} ${DJGPPDOC}/readme ${DOCDIR}/
${INSTALL_DATA} ${PKGDIR}/DESCR ${DOCDIR}/Readme.FreeBSD
.endif
.include <bsd.port.mk>

View File

@ -0,0 +1 @@
MD5 (djgpp/djcrx201.zip) = 384d9b738457892fe35cdee159a425ee

View File

@ -0,0 +1,7 @@
stubedit:
${CC} -o stubedit stubedit.c
stubify:
${CC} -o stubify stubify.c
all: stubedit stubify

View File

@ -0,0 +1,13 @@
*** lib/djgpp.djl Wed Oct 23 18:06:22 1996
--- lib/djgpp.djl2 Sun Sep 8 22:40:06 1996
***************
*** 1,4 ****
! OUTPUT_FORMAT("coff-go32")
ENTRY(start)
SECTIONS
{
--- 1,4 ----
! OUTPUT_FORMAT("coff-i386")
ENTRY(start)
SECTIONS
{

View File

@ -0,0 +1,11 @@
--- lib/specs.orig Sun May 18 23:28:53 1997
+++ lib/specs Sun May 18 23:29:19 1997
@@ -25,7 +25,7 @@
%{!A:%{!nostartfiles:%{!nostdlib:%S}}} %{static:}\
%{L*} %D %{T*} %o -Tdjgpp.djl\
%{!nostdlib:-lgcc %L -lgcc %{!A:%E}}}}}}}
-%{!c:%{!M:%{!MM:%{!E:%{!S:stubify %{v} %{o*:%*} %{!o*:a.out}}}}}}
+%{!c:%{!M:%{!MM:%{!E:%{!S:i386-go32-stubify %{v} %{o*:%*} %{!o*:a.out}}}}}}
*lib:
-lc

View File

@ -0,0 +1,29 @@
*** src/stub/stubedit.c.orig Sun Jun 22 16:51:08 1997
--- src/stub/stubedit.c Sun Jun 22 16:57:54 1997
***************
*** 1,5 ****
--- 1,6 ----
/* Copyright (C) 1996 DJ Delorie, see COPYING.DJ for details */
/* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
+ /* Patched by Joel Sutton - Sun Jun 22 16:57:39 EST 1997 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
***************
*** 70,76 ****
static char response[200];
printf("%s ? [%s] ", question, default_answer);
fflush(stdout);
! gets(response);
if (response[0] == '\0')
return 0;
return response;
--- 71,78 ----
static char response[200];
printf("%s ? [%s] ", question, default_answer);
fflush(stdout);
! fgets(response, 200, stdin);
! response[strlen(response)-1]='\0';
if (response[0] == '\0')
return 0;
return response;

View File

@ -0,0 +1 @@
DJGPP V2 libraries and compatability for crossgo32 crosscompiler

View File

@ -0,0 +1,21 @@
This ports installs the DJGPP Version 2 libraries and stub utilities
into the crossgo32 cross compiler port. The original libraries built
by the crossgo32 port are moved aside until you run pkg_delete to
un-install this port.
The DJGPP libraries create larger binaries for smaller programs but
this is less of an issue with larger programs.
Two new utilities - i386-go32-stubify and i386-go32-stubedit - are
also installed. It is no longer necessary to stubify the COFF binaries
as a patch is included to do this automatically after
compilation. Please refer to the DJGPP v2 FAQ for further information
on this topic.
Finally, this port also allows us to install a number of extra
toolkits from the DJGPP collection.
Share and enjoy,
Joel...
sutton@aardvark.apana.org.au

View File

@ -0,0 +1,153 @@
@exec mv %D/i386-go32/lib %D/i386-go32/lib-newlib
@exec mv %D/i386-go32/include %D/i386-go32/include-newlib
@exec mkdir -p %D/lib/gcc-lib/i386-go32/2.7.2.2/old-newlib
@exec mv %D/lib/gcc-lib/i386-go32/2.7.2.2/include %D/lib/gcc-lib/i386-go32/2.7.2.2/old-newlib/
@exec mv %D/lib/gcc-lib/i386-go32/2.7.2.2/libgcc.a %D/lib/gcc-lib/i386-go32/2.7.2.2/old-newlib/
@exec mv %D/lib/gcc-lib/i386-go32/2.7.2.2/specs %D/lib/gcc-lib/i386-go32/2.7.2.2/old-newlib/
bin/i386-go32-stubify
bin/i386-go32-stubedit
i386-go32/lib/crt0.o
i386-go32/lib/djgpp.djl
i386-go32/lib/dxe.ld
i386-go32/lib/gcrt0.o
i386-go32/lib/libc.a
i386-go32/lib/libdbg.a
i386-go32/lib/libemu.a
i386-go32/lib/libg.a
i386-go32/lib/libgcc.a
i386-go32/lib/libm.a
i386-go32/lib/libpc.a
i386-go32/lib/specs
i386-go32/include/_ansi
i386-go32/include/ar.h
i386-go32/include/assert.h
i386-go32/include/bios.h
i386-go32/include/coff.h
i386-go32/include/conio.h
i386-go32/include/crt0.h
i386-go32/include/ctype.h
i386-go32/include/debug/_ansi
i386-go32/include/debug/dbgcom.h
i386-go32/include/debug/stab.h
i386-go32/include/debug/syms.h
i386-go32/include/debug/tss.h
i386-go32/include/debug/v2load.h
i386-go32/include/debug/wild.h
i386-go32/include/dir.h
i386-go32/include/direct.h
i386-go32/include/dirent.h
i386-go32/include/dos.h
i386-go32/include/dpmi.h
i386-go32/include/errno.h
i386-go32/include/fcntl.h
i386-go32/include/file.h
i386-go32/include/flexlexe.h
i386-go32/include/float.h
i386-go32/include/fnmatch.h
i386-go32/include/ftw.h
i386-go32/include/getpages.h
i386-go32/include/glob.h
i386-go32/include/go32.h
i386-go32/include/gppconio.h
i386-go32/include/grp.h
i386-go32/include/inlines/_inline
i386-go32/include/inlines/ctype.ha
i386-go32/include/inlines/ctype.hd
i386-go32/include/inlines/pc.h
i386-go32/include/io.h
i386-go32/include/keys.h
i386-go32/include/libc/_ansi
i386-go32/include/libc/asmdefs.h
i386-go32/include/libc/atexit.h
i386-go32/include/libc/bss.h
i386-go32/include/libc/dosexec.h
i386-go32/include/libc/dosio.h
i386-go32/include/libc/environ.h
i386-go32/include/libc/farptrgs.h
i386-go32/include/libc/file.h
i386-go32/include/libc/ieee.h
i386-go32/include/libc/internal.h
i386-go32/include/libc/local.h
i386-go32/include/libc/mkfargs.bat
i386-go32/include/libc/stdiohk.h
i386-go32/include/libc/stubs.h
i386-go32/include/libc/ttyprvt.h
i386-go32/include/libc/unconst.h
i386-go32/include/libm/math.h
i386-go32/include/limits.h
i386-go32/include/locale.h
i386-go32/include/machine/asm.h
i386-go32/include/machine/endian.h
i386-go32/include/malloc.h
i386-go32/include/math.h
i386-go32/include/mem.h
i386-go32/include/memory.h
i386-go32/include/mntent.h
i386-go32/include/netinet/_ansi
i386-go32/include/netinet/in.h
i386-go32/include/osfcn.h
i386-go32/include/pc.h
i386-go32/include/process.h
i386-go32/include/pwd.h
i386-go32/include/random.h
i386-go32/include/regex.h
i386-go32/include/search.h
i386-go32/include/setjmp.h
i386-go32/include/share.h
i386-go32/include/signal.h
i386-go32/include/std.h
i386-go32/include/stdarg.h
i386-go32/include/stddef.h
i386-go32/include/stdio.h
i386-go32/include/stdlib.h
i386-go32/include/string.h
i386-go32/include/strings.h
i386-go32/include/stubinfo.h
i386-go32/include/sys/_ansi
i386-go32/include/sys/cdefs.h
i386-go32/include/sys/config.h
i386-go32/include/sys/dir.h
i386-go32/include/sys/djtypes.h
i386-go32/include/sys/dxe.h
i386-go32/include/sys/errno.h
i386-go32/include/sys/exceptn.h
i386-go32/include/sys/farptr.h
i386-go32/include/sys/fcntl.h
i386-go32/include/sys/file.h
i386-go32/include/sys/fsext.h
i386-go32/include/sys/ioctl.h
i386-go32/include/sys/mman.h
i386-go32/include/sys/mono.h
i386-go32/include/sys/movedata.h
i386-go32/include/sys/nearptr.h
i386-go32/include/sys/param.h
i386-go32/include/sys/resource.h
i386-go32/include/sys/segments.h
i386-go32/include/sys/stat.h
i386-go32/include/sys/system.h
i386-go32/include/sys/time.h
i386-go32/include/sys/timeb.h
i386-go32/include/sys/times.h
i386-go32/include/sys/types.h
i386-go32/include/sys/utsname.h
i386-go32/include/sys/vfs.h
i386-go32/include/sys/wait.h
i386-go32/include/termios.h
i386-go32/include/time.h
i386-go32/include/tzfile.h
i386-go32/include/unistd.h
i386-go32/include/utime.h
i386-go32/include/values.h
i386-go32/include/varargs.h
info/libc.info
share/doc/djgpp2/install
share/doc/djgpp2/readme
share/doc/djgpp2/Readme.FreeBSD
@dirrm share/doc/djgpp2
@unexec rm -rf %D/i386-go32/lib
@unexec rm -rf %D/i386-go32/include
@unexec mv %D/i386-go32/lib-newlib %D/i386-go32/lib
@unexec mv %D/i386-go32/include-newlib %D/i386-go32/include
@unexec mv %D/lib/gcc-lib/i386-go32/2.7.2.2/old-newlib/include %D/lib/gcc-lib/i386-go32/2.7.2.2/
@unexec mv %D/lib/gcc-lib/i386-go32/2.7.2.2/old-newlib/libgcc.a %D/lib/gcc-lib/i386-go32/2.7.2.2/
@unexec mv %D/lib/gcc-lib/i386-go32/2.7.2.2/old-newlib/specs %D/lib/gcc-lib/i386-go32/2.7.2.2/