+2006-06-21 Bruno Haible <bruno@clisp.org>
+
+ Avoid warnings from recent versions of mcs.
+ * build-aux/csharpcomp.sh.in (options_mcs): Don't use options -o, -L,
+ -r any more. Use options documented since mcs-1.0 instead. Similarly
+ for -g.
+
+2005-12-04 Bruno Haible <bruno@clisp.org>
+
+ * build-aux/csharpcomp.sh.in: Suffix for resources is .resources, not
+ .resource.
+
+2005-07-09 Bruno Haible <bruno@clisp.org>
+
+ * build-aux/csharpcomp.sh.in (options_csc): For -l option, add a .dll
+ suffix.
+ Reported by Mark Junker <mjscod@gmx.de>.
+
2006-07-22 Bruno Haible <bruno@clisp.org>
* modules/gettext: Upgrade to gettext-0.15.
#!/bin/sh
# Compile a C# program.
-# Copyright (C) 2003-2005 Free Software Foundation, Inc.
+# Copyright (C) 2003-2006 Free Software Foundation, Inc.
# Written by Bruno Haible <bruno@clisp.org>, 2003.
#
# This program is free software; you can redistribute it and/or modify
{
# Use the mktemp program if available. If not available, hide the error
# message.
- tmp=`(umask 077 && mktemp -d "$TMPDIR/gtXXXXXX") 2>/dev/null` &&
+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/gtXXXXXX") 2>/dev/null` &&
test -n "$tmp" && test -d "$tmp"
} ||
{
;;
esac
options_cscc="$options_cscc -o "`echo "$2" | sed -e "$sed_quote_subst"`
- options_mcs="$options_mcs -o "`echo "$2" | sed -e "$sed_quote_subst"`
+ options_mcs="$options_mcs -out:"`echo "$2" | sed -e "$sed_quote_subst"`
options_csc="$options_csc -out:"`echo "$2" | sed -e "$sed_quote_subst"`
shift
;;
-L)
options_cscc="$options_cscc -L "`echo "$2" | sed -e "$sed_quote_subst"`
- options_mcs="$options_mcs -L "`echo "$2" | sed -e "$sed_quote_subst"`
+ options_mcs="$options_mcs -lib:"`echo "$2" | sed -e "$sed_quote_subst"`
options_csc="$options_csc -lib:"`echo "$2" | sed -e "$sed_quote_subst"`
shift
;;
-l)
options_cscc="$options_cscc -l "`echo "$2" | sed -e "$sed_quote_subst"`
- options_mcs="$options_mcs -r "`echo "$2" | sed -e "$sed_quote_subst"`
+ options_mcs="$options_mcs -reference:"`echo "$2" | sed -e "$sed_quote_subst"`
options_csc="$options_csc -reference:"`echo "$2" | sed -e "$sed_quote_subst"`".dll"
shift
;;
;;
-g)
options_cscc="$options_cscc -g"
- options_mcs="$options_mcs -g"
+ options_mcs="$options_mcs -debug"
options_csc="$options_csc -debug+"
;;
-*)
echo "csharpcomp: unknown option '$1'" 1>&2
exit 1
;;
- *.resource)
+ *.resources)
options_cscc="$options_cscc -fresources="`echo "$1" | sed -e "$sed_quote_subst"`
options_mcs="$options_mcs -resource:"`echo "$1" | sed -e "$sed_quote_subst"`
options_csc="$options_csc -resource:"`echo "$1" | sed -e "$sed_quote_subst"`
+2006-06-21 Bruno Haible <bruno@clisp.org>
+
+ Avoid warnings from recent versions of mcs.
+ * csharpcomp.c (compile_csharp_using_mono): Don't use options -o, -L,
+ -r any more. Use options documented since mcs-1.0 instead. Similarly
+ for -g.
+
+2005-07-09 Bruno Haible <bruno@clisp.org>
+
+ * csharpcomp.c (compile_csharp_using_sscli): For -l option, add a .dll suffix.
+ Reported by Mark Junker <mjscod@gmx.de>.
+
2006-06-17 Bruno Haible <bruno@clisp.org>
* config.charset: Update for NetBSD 3.0.
/* Compile a C# program.
- Copyright (C) 2003-2005 Free Software Foundation, Inc.
+ Copyright (C) 2003-2006 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2003.
This program is free software; you can redistribute it and/or modify
for (i = 0; i < sources_count; i++)
{
const char *source_file = sources[i];
- if (strlen (source_file) >= 9
- && memcmp (source_file + strlen (source_file) - 9, ".resource",
- 9) == 0)
+ if (strlen (source_file) >= 10
+ && memcmp (source_file + strlen (source_file) - 10, ".resources",
+ 10) == 0)
{
char *option = (char *) xallocsa (12 + strlen (source_file) + 1);
unsigned int i;
argc =
- 1 + (output_is_library ? 1 : 0) + 2 + 2 * libdirs_count
- + 2 * libraries_count + (debug ? 1 : 0) + sources_count;
+ 1 + (output_is_library ? 1 : 0) + 1 + libdirs_count + libraries_count
+ + (debug ? 1 : 0) + sources_count;
argv = (char **) xallocsa ((argc + 1) * sizeof (char *));
argp = argv;
*argp++ = "mcs";
if (output_is_library)
*argp++ = "-target:library";
- *argp++ = "-o";
- *argp++ = (char *) output_file;
+ {
+ char *option = (char *) xallocsa (5 + strlen (output_file) + 1);
+ memcpy (option, "-out:", 5);
+ strcpy (option + 5, output_file);
+ *argp++ = option;
+ }
for (i = 0; i < libdirs_count; i++)
{
- *argp++ = "-L";
- *argp++ = (char *) libdirs[i];
+ char *option = (char *) xallocsa (5 + strlen (libdirs[i]) + 1);
+ memcpy (option, "-lib:", 5);
+ strcpy (option + 5, libdirs[i]);
+ *argp++ = option;
}
for (i = 0; i < libraries_count; i++)
{
- *argp++ = "-r";
- *argp++ = (char *) libraries[i];
+ char *option = (char *) xallocsa (11 + strlen (libraries[i]) + 4 + 1);
+ memcpy (option, "-reference:", 11);
+ memcpy (option + 11, libraries[i], strlen (libraries[i]));
+ strcpy (option + 11 + strlen (libraries[i]), ".dll");
+ *argp++ = option;
}
if (debug)
- *argp++ = "-g";
+ *argp++ = "-debug";
for (i = 0; i < sources_count; i++)
{
const char *source_file = sources[i];
- if (strlen (source_file) >= 9
- && memcmp (source_file + strlen (source_file) - 9, ".resource",
- 9) == 0)
+ if (strlen (source_file) >= 10
+ && memcmp (source_file + strlen (source_file) - 10, ".resources",
+ 10) == 0)
{
char *option = (char *) xallocsa (10 + strlen (source_file) + 1);
/* Remove zombie process from process list, and retrieve exit status. */
exitstatus = wait_subprocess (child, "mcs", false, false, true, true);
+ for (i = 1 + (output_is_library ? 1 : 0);
+ i < 1 + (output_is_library ? 1 : 0)
+ + 1 + libdirs_count + libraries_count;
+ i++)
+ freesa (argv[i]);
for (i = 0; i < sources_count; i++)
if (argv[argc - sources_count + i] != sources[i])
freesa (argv[argc - sources_count + i]);
for (i = 0; i < sources_count; i++)
{
const char *source_file = sources[i];
- if (strlen (source_file) >= 9
- && memcmp (source_file + strlen (source_file) - 9, ".resource",
- 9) == 0)
+ if (strlen (source_file) >= 10
+ && memcmp (source_file + strlen (source_file) - 10, ".resources",
+ 10) == 0)
{
char *option = (char *) xallocsa (10 + strlen (source_file) + 1);
+2005-12-04 Bruno Haible <bruno@clisp.org>
+
+ * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
+
2006-07-22 Bruno Haible <bruno@clisp.org>
* gettext.m4: Update from GNU gettext-0.15.
-# csharpcomp.m4 serial 5 (gettext-0.15)
+# csharpcomp.m4 serial 6 (gettext-0.15)
dnl Copyright (C) 2003-2005 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# Prerequisites of csharpcomp.sh.
+# Checks for a C# compiler.
+# Sets at most one of HAVE_CSCC, HAVE_MCS, HAVE_CSC.
# Sets HAVE_CSHARPCOMP to nonempty if csharpcomp.sh will work.
-
+# Also sets CSHARPCOMPFLAGS.
AC_DEFUN([gt_CSHARPCOMP],
[
AC_REQUIRE([gt_CSHARP_CHOICE])
AC_SUBST(HAVE_CSCC)
AC_SUBST(HAVE_MCS)
AC_SUBST(HAVE_CSC)
+ dnl Provide a default for CSHARPCOMPFLAGS.
+ if test -z "${CSHARPCOMPFLAGS+set}"; then
+ CSHARPCOMPFLAGS="-O -g"
+ fi
+ AC_SUBST(CSHARPCOMPFLAGS)
])