From: Curt A. <ca...@us...> - 2003-02-20 08:06:20
|
Update of /cvsroot/ant-contrib/cpptasks/src/net/sf/antcontrib/cpptasks/compiler In directory sc8-pr-cvs1:/tmp/cvs-serv20260/src/net/sf/antcontrib/cpptasks/compiler Modified Files: AbstractProcessor.java LinkType.java Log Message: Patch [ 676276 ] Enhanced support for Mac OS X Index: AbstractProcessor.java =================================================================== RCS file: /cvsroot/ant-contrib/cpptasks/src/net/sf/antcontrib/cpptasks/compiler/AbstractProcessor.java,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** AbstractProcessor.java 17 Feb 2003 03:24:30 -0000 1.15 --- AbstractProcessor.java 20 Feb 2003 08:06:15 -0000 1.16 *************** *** 2,6 **** * The Apache Software License, Version 1.1 * ! * Copyright (c) 2002 The Ant-Contrib project. All rights * reserved. * --- 2,6 ---- * The Apache Software License, Version 1.1 * ! * Copyright (c) 2002-2003 The Ant-Contrib project. All rights * reserved. * *************** *** 144,147 **** --- 144,177 ---- return (String[]) this.headerExtensions.clone(); } + + /** + * Gets the target operating system name + * + * @return String target operating system name + */ + protected String getOSName() { + return System.getProperty("os.name"); + } + + /** + * Gets the target operating system architecture + * + * @return String target operating system architecture + */ + protected String getOSArch() { + return System.getProperty("os.arch"); + } + + /** + * Returns true if the target operating system is Mac OS X + * or Darwin. + * + * @return boolean + */ + protected boolean isDarwin() { + String osName = getOSName(); + return "Mac OS X".equals(osName); + } + } Index: LinkType.java =================================================================== RCS file: /cvsroot/ant-contrib/cpptasks/src/net/sf/antcontrib/cpptasks/compiler/LinkType.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** LinkType.java 7 Feb 2003 11:55:13 -0000 1.12 --- LinkType.java 20 Feb 2003 08:06:15 -0000 1.13 *************** *** 2,6 **** * The Apache Software License, Version 1.1 * ! * Copyright (c) 2001-2002 The Ant-Contrib project. All rights * reserved. * --- 2,6 ---- * The Apache Software License, Version 1.1 * ! * Copyright (c) 2001-2003 The Ant-Contrib project. All rights * reserved. * *************** *** 52,56 **** import net.sf.antcontrib.cpptasks.SubsystemEnum; - /** * This class represents the target platform for --- 52,55 ---- *************** *** 60,107 **** * @author Curt Arnold */ ! public class LinkType ! { ! private SubsystemEnum subsystem = new SubsystemEnum(); ! private OutputTypeEnum outputType = new OutputTypeEnum(); ! private boolean staticRuntime = false; ! public LinkType() { ! } ! public void setSubsystem(SubsystemEnum subsystem) { ! this.subsystem = subsystem; ! } ! public void setOutputType(OutputTypeEnum outputType) { ! this.outputType = outputType; ! } ! public void setStaticRuntime(boolean staticRuntime) { ! this.staticRuntime = staticRuntime; ! } ! public boolean isSharedLibrary() { ! String value = outputType.getValue(); ! return value.equals("shared"); ! } ! public boolean isStaticLibrary() { ! String value = outputType.getValue(); ! return value.equals("static"); ! } ! public boolean isExecutable() { ! String value = outputType.getValue(); ! return value.equals("executable"); ! } ! public boolean isSubsystemGUI() { ! String value = subsystem.getValue(); ! return value.equals("gui"); ! } ! public boolean isSubsystemConsole() { ! String value = subsystem.getValue(); ! return value.equals("console"); ! } ! public boolean isStaticRuntime() { ! return staticRuntime; ! } ! } --- 59,181 ---- * @author Curt Arnold */ ! public class LinkType { ! private SubsystemEnum subsystem = new SubsystemEnum(); ! private OutputTypeEnum outputType = new OutputTypeEnum(); ! private boolean staticRuntime = false; ! /** ! * Constructor ! * ! * By default, an gui executable with a dynamically linked runtime ! * ! */ ! public LinkType() { ! } ! /** ! * Sets the subsystem (gui, console, etc). ! * ! * @param subsystem subsystem, may not be null ! */ ! public void setSubsystem(SubsystemEnum subsystem) { ! if (subsystem == null) { ! throw new IllegalArgumentException("subsystem"); ! } ! this.subsystem = subsystem; ! } ! /** ! * Sets the output type (execuable, shared, etc). ! * ! * @param outputType, may not be null ! */ ! public void setOutputType(OutputTypeEnum outputType) { ! if (outputType == null) { ! throw new IllegalArgumentException("outputType"); ! } ! this.outputType = outputType; ! } ! /** ! * Requests use of a static runtime library. ! * ! * @param staticRuntime if true, use static runtime library if possible. ! */ ! public void setStaticRuntime(boolean staticRuntime) { ! this.staticRuntime = staticRuntime; ! } ! /** ! * Gets whether the link should produce a shared library. ! * ! * @return boolean ! */ ! public boolean isSharedLibrary() { ! String value = outputType.getValue(); ! return value.equals("shared"); ! } ! ! /** ! * Gets whether the link should produce a static library. ! * ! * @return boolean ! */ ! public boolean isStaticLibrary() { ! String value = outputType.getValue(); ! return value.equals("static"); ! } ! ! /** ! * Gets whether the link should produce an executable ! * ! * @return boolean ! */ ! public boolean isExecutable() { ! String value = outputType.getValue(); ! return value.equals("executable"); ! } + /** + * Gets whether the link should produce a + * module for a graphical user interface subsystem. + * + * @return boolean + */ + public boolean isSubsystemGUI() { + String value = subsystem.getValue(); + return value.equals("gui"); + } + + + /** + * Gets whether the link should produce a + * module for a console subsystem. + * + * @return boolean + */ + public boolean isSubsystemConsole() { + String value = subsystem.getValue(); + return value.equals("console"); + } + + /** + * Gets whether the module should use + * a statically linked runtime library. + * + * @return boolean + */ + public boolean isStaticRuntime() { + return staticRuntime; + } + + /** + * Gets whether the link should produce a + * plugin module. + * + * @return boolean + */ + public boolean isPluginModule() { + String value = outputType.getValue(); + return value.equals("plugin"); + } + } |