dmodule/tool

"Lars Ivar Igesund" <[email protected]>
Newsgroups gmane.comp.tools.aap.devel
Message-ID <0b9c01c379e0$f2c4e110$0200000a@mesmer>
Hi!

Here is my D work. It is fairly complete IMHO, and already
includes more than I need myself at the moment. If I notice
changes with tool/language that conflicts I will notify/send a
diff. 

(There's also a minor correction for the mingw tool.)

I hope that you will include the D support in the main part
of aap such that it is automatically or easily available for
a D programmer. When it is included, I will announce it
on the D newsgroup.

If you want me to contribute more, either documentation
or on some specific feature, please ask and I will consider it.

Lars Ivar Igesund
dmd.py (text/plain, 1.8 KB)
# Part of the A-A-P recipe executive 

# Copyright (c) 2002-2003 stichting NLnet Labs
# Permission to copy and use this file is specified in the file COPYING.
# If this file is missing you can find it here: http://www.a-a-p.org/COPYING

#
# This module sets up variables and actions for using the DMD compiler tools.
#

# Information on this tool / TODO:
#
# DMD and the default linker (optlink) don't accept objectfiles without
# the single .obj suffix. That is; some other suffix will break the
# build process, as will .<presuff>.obj 2003-09-13
#
# The DLINKFLAGS variable is not necessary at this point, but it is
# expected to be needed for at least shared libraries at some point
# in the future. 2003-09-13

from RecPython import *
import Global
from Action import action_add
from Dictlist import str2dictlist
from RecPos import RecPos


def exists():
    """
    Return TRUE when the DMD toolchain can be found.
    """
    return program_path("dmd")


def define_actions():
    """
    Define the actions that DMD can accomplish.
    """
    rd = Global.globals
    rpstack = [ RecPos("compile_dmd d action") ]
    action_add(rpstack, rd, str2dictlist(rpstack, "compile_dmd object,dllobject,libobject d"),
            ":sys $DMD $DFLAGS $?DEFINE $?INCLUDE "
                "-of$target -c $source")
    rpstack = [ RecPos("build_dmd action") ]
    action_add(rpstack, rd, str2dictlist(rpstack, "build_dmd object,dllobject,libobject"),
            ":sys $DMD $DMDLINKFLAGS -of$target $source")
    
    if not rd.get("DMD"):
        rd["DMD"] = "dmd"
    if not rd.get("DMDLINKFLAGS"):
        rd["DMDLINKFLAGS"] = ""


def use_actions(scope):
    """
    Setup variables so that the default actions use the DMD actions.
    """
    scope["D_COMPILE_ACTION"] = "compile_dmd"
    scope["D_BUILD_ACTION"] = "build_dmd"

# vim: set sw=4 et sts=4 tw=79 fo+=l:
mingwtool.diff (application/octet-stream, 527 B)
Index: mingw.py
===================================================================
RCS file: /cvsroot/a-a-p/Exec/tools/mingw.py,v
retrieving revision 1.4
diff -u -r1.4 mingw.py
--- mingw.py	4 Sep 2003 15:56:12 -0000	1.4
+++ mingw.py	13 Sep 2003 08:42:12 -0000
@@ -5,7 +5,7 @@
 # If this file is missing you can find it here: http://www.a-a-p.org/COPYING
 
 #
-# This module sets up variables and actions for using the Microsoft Visual C
+# This module sets up variables and actions for using the MinGW
 # compiler tools.
 #
filetype.diff (application/octet-stream, 474 B)
Index: Filetype.py
===================================================================
RCS file: /cvsroot/a-a-p/Exec/Filetype.py,v
retrieving revision 1.29
diff -u -r1.29 Filetype.py
--- Filetype.py	1 Sep 2003 18:09:31 -0000	1.29
+++ Filetype.py	13 Sep 2003 08:42:49 -0000
@@ -122,6 +122,7 @@
         ("pld", "cupl"),
         ("si", "cuplsim"),
         ("cyn", "cynpp"),
+        ("d", "d"),
         ("def", "def"),
         ("desc", "desc"),
         ("diff", "diff"),
dmodule.aap (application/octet-stream, 2.8 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.