pkgsrc/lang/drscheme/Makefile
jschauma c197dcec6d Update drscheme to version 207. Changes since 202:
- Wizards for ProfessorJ added
	+ union wizard
	+ class wizard
- Check Syntax disabled in professorJ languages.
- Help Desk searching is now language-sensitive.
- Check syntax is now integrated (better) with the syntax
colorer.
- Check Syntax now distinguishes between require'd
and locally defined identifiers.
- added the ability to specify a command-line to the module
language.
- Help Desk's status messages are now in the frame and
it's break button is also in the frame (no more modal
dialog)
- Check Syntax now does a better job of navigating amoung
occurrences of a single variable. The popup menu lets you
go from a bound occurrence to a binding occurrence and
from a binding occurrence to the next binding occurrence.
Also added two keystrokes: c-x;n to go to the next bound
occurrence and c-x;b to to the binding occurrence.
- show menu => view menu, added show/hide for the toolbar
- multi file search works much bching languages color the portion of the program
that has not been tested in dark red (using a simple
syntactic coverage criterion -- dark red means untested,
but not dark red doesn't mean fully tested, of course).
- added a test coverage annotation for other languages in
the "details" portion of the languages dialog; run the
program and it colors the code that was executed in
green and code that wasn't executed in red.
- fixed up help desk fonts, so that the font size in help
desk is now linked to the font size in drscheme proper.
- added support for editor modes to drscheme.
- drscheme shows the stack via arrows on the program text
when an error occurs (and debugging is on)
- added to special menu item: "insert delta" (to mean
define) in parallel to the insert lambda menu item.
- framework's scheme-mode font changed to be in an editor
mixin.
- macos: drscheme doesn't quit when all windows are closed
anymoct -> supports multiple values using this syntax:
(-> integer? (values integer? integer?))
- parenthesis highlight color is now configurable
- integrated the module browser into the main drscheme
window. Use the show menu to open a panel on the lhs of
the drscheme window containing a DAG representing the
modules that are required (only works for programs in
modules).
- integrated Bruce Hauman's rewrite of the match.ss
library (ongoing).
- added arrows to check syntax that show the (syntactic)
tail structure of the program.
- fixed many many problems with Help Desk. Some of the
more interesting ones:
- manual downloading now works.
- bug report form is a mred window now.
- doc.txt highlighting is in the right place now
- doc.txt search restults now go to the right place
- servlets are now modules (with no more free vars)
- browser menus work properly
- urls outside of our documentation use an external browser
- eliminated many (now unecessary) redirections
- various responsiveness improvements
- help desk as a standalone web server isn't supported
anymore.
- added a status line class to the framework, which is
used for check syntax and the module browser. both show
status as the check the program and show information on
mouse-over. Also, the contour window shows you the line
under the mouse in a status line on mouse over.
- added an extra level of hierarchy to the language
dialog, but without the turn-down triangles. this helps
organize the language dialog somewhat.
- the top level function declarations in algol60 are now
available in the REPL and in the test suite tool
- Removed `Windows' menu from windows and unix versions.
- Windows installer generates Program menu shortcuts for
all users

- added test suite support for use with the How to Design
  Programs
- added support for recovering autosave files when DrScheme
crashes
- the draw.ss teachpack now provides the function
get-key-event : -> Key
This function enables programmers who use the draw.ss
teachpack to write interactive drawing games.
Warning: The function fails intermittently on Mac OS X. We intend
to fix this problem in a future release.
- Help Desk users can choose whether they wish to use a
frame-based version.  A toggle switch for this choice (in the
form of a link) appears on the Help Desk home page.  It can
also be changed in the Help Desk configuration.
- Help Desk users can once again use the PLT internal browser;
look for the browser preference in DrScheme's preferences panel
- removed an error in MrEd for Windows that was a frequent source of
instability
2004-08-17 19:34:56 +00:00

78 lines
2.7 KiB
Makefile

# $NetBSD: Makefile,v 1.20 2004/08/17 19:34:56 jschauma Exp $
#
DISTNAME= plt-${DRSCHEME_VERSION}-src-unix
PKGNAME= drscheme-${DRSCHEME_VERSION}
DIST_SUBDIR= ${PKGNAME:C/-[0-9]*//}/${PKGNAME:C/.*-([0-9]*)/\1/}
CATEGORIES= lang
MASTER_SITES= http://download.plt-scheme.org/bundles/${DRSCHEME_VERSION}/plt/ \
http://www.cs.utah.edu/plt/download/${DRSCHEME_VERSION}/plt/ \
ftp://ftp.pasteur.fr/pub/computing/Scheme/plt-scheme/${DRSCHEME_VERSION}/plt/ \
ftp://archive.informatik.uni-tuebingen.de/unix/language/plt/${DRSCHEME_VERSION}/plt/ \
ftp://morpheus.wish.com.mx/pub/plt/${DRSCHEME_VERSION}/plt/
EXTRACT_SUFX= .tgz
MAINTAINER= groo@NetBSD.org
HOMEPAGE= http://www.drscheme.org/
COMMENT= R4RS-compliant and nearly R5RS-compliant scheme tailored for teaching
CONFLICTS+= mzscheme-[0-9]*:../../lang/mzscheme
WRKSRC= ${WRKDIR}/plt/src
USE_BUILDLINK3= yes
USE_X11= yes
USE_GNU_TOOLS+= make
USE_PERL5= yes
GNU_CONFIGURE= yes
DRSCHEME_VERSION= 207
# XXX: we pass this as the prefix to the configure script (see below) so
# the mzc compiler finds all the right includes and libs
PLT_HOME= ${PREFIX}/lib/plt
PROGRAMS= drscheme framework-test framework-test-engine games help-desk \
mred mzc mzpp mzscheme mztext pdf-slatex setup-plt slatex \
slideshow tex2page web-server web-server-monitor web-server-text
post-patch:
@for patchee in \
${WRKDIR}/plt/bin/mred \
${WRKDIR}/plt/bin/mzscheme \
${WRKDIR}/plt/man/man1/mzscheme.1 \
${WRKDIR}/plt/collects/slibinit/init.ss \
${WRKDIR}/plt/collects/dynext/compile-unit.ss \
${WRKSRC}/mzscheme/src/makeexn \
${WRKDIR}/plt/man/man1/drscheme.1 \
${WRKDIR}/plt/man/man1/mred.1; do \
${MV} -f $$patchee ${WRKSRC}/foo ; \
${SED} -e 's|@PREFIX@|${LOCALBASE}|' <${WRKSRC}/foo \
> $$patchee ; \
done;
@${MV} -f ${WRKSRC}/mred/Makefile.in ${WRKSRC}/foo
@${SED} -e 's|@X11PREFIX@|${X11PREFIX}|' < ${WRKSRC}/foo > ${WRKSRC}/mred/Makefile.in
@${RM} -f ${WRKSRC}/foo
@${FIND} ${WRKDIR} -name '*.orig' -print | ${XARGS} ${RM} -f
post-install:
${INSTALL_MAN_DIR} ${LOCALBASE}/man/man1
${INSTALL_MAN} ${WRKSRC}/../man/man1/*.1 ${PREFIX}/man/man1/
@cd ${PREFIX}/lib/plt && PATH="${OLD_PATH}" ${SH} install || ${TRUE}
.for f in ${PROGRAMS}
@cd ${PREFIX}/bin && ${LN} -s ../lib/plt/bin/$f
.endfor
.include "../../graphics/MesaLib/buildlink3.mk"
.include "../../graphics/freetype2/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
# See comment above.
CONFIGURE_ARGS+= --prefix=${PLT_HOME}
# XXX: Gack. Ugly hackery to have the install process run with the regular
# PATH.
.for _dir_ in ${PATH:C/:/ /g}
. if empty(PREPEND_PATH:M${_dir_})
OLD_PATH:= ${_dir_}:${OLD_PATH}
. endif
.endfor