Remove old CVS $Id$ keyword
[uffi.git] / examples / c-test-fns.c
index 05244b80601358519d072453e65da11a8763d399..e8cdcd18e6348c93baf67d15dbc232371a07d469 100644 (file)
@@ -1,36 +1,41 @@
 /***************************************************************************
  * FILE IDENTIFICATION
- *  
+ *
  *  Name:         c-test-fns.c
  *  Purpose:      Test functions in C for UFFI library
  *  Programer:    Kevin M. Rosenberg
  *  Date Started: Mar 2002
  *
- *  CVS Id:   $Id: c-test-fns.c,v 1.2 2002/03/21 04:04:45 kevin Exp $
- *
- * This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
+ * This file, part of UFFI, is Copyright (c) 2002-2010 by Kevin M. Rosenberg
  *
- * UFFI users are granted the rights to distribute and use this software
- * as governed by the terms of the Lisp Lesser GNU Public License
- * (http://opensource.franz.com/preamble.html), also known as the LLGPL.
-
  * These variables are correct for GCC
  * you'll need to modify these for other compilers
  ***************************************************************************/
 
-#ifdef WIN32
+#if defined(WIN32)||defined(WIN64)
 #include <windows.h>
+
+BOOL WINAPI DllEntryPoint(HINSTANCE hinstdll,
+                          DWORD fdwReason,
+                          LPVOID lpvReserved)
+{
+        return 1;
+}
+
+#define DLLEXPORT __declspec(dllexport)
+
+#else
+#define DLLEXPORT
 #endif
 
 #include <ctype.h>
 #include <stdlib.h>
+#include <math.h>
 
 
 /* Test of constant input string */
+DLLEXPORT
 int
-#ifdef WIN32
-WINAPI
-#endif
 cs_count_upper (char* psz)
 {
   int count = 0;
@@ -38,19 +43,17 @@ cs_count_upper (char* psz)
   if (psz) {
     while (*psz) {
       if (isupper (*psz))
-       ++count;
+        ++count;
       ++psz;
     }
     return count;
-  } else 
+  } else
     return -1;
 }
 
 /* Test of input and output of a string */
+DLLEXPORT
 void
-#ifdef WIN32
-WINAPI
-#endif
 cs_to_upper (char* psz)
 {
   if (psz) {
@@ -62,10 +65,8 @@ cs_to_upper (char* psz)
 }
 
 /* Test of an output only string */
+DLLEXPORT
 void
-#ifdef WIN32
-WINAPI
-#endif
 cs_make_random (int size, char* buffer)
 {
   int i;
@@ -73,6 +74,16 @@ cs_make_random (int size, char* buffer)
     buffer[i] = 'A' + (rand() % 26);
 }
 
-    
 
-    
+/* Test of input/output vector */
+DLLEXPORT
+void
+half_double_vector (int size, double* vec)
+{
+  int i;
+  for (i = 0; i < size; i++)
+    vec[i] /= 2.;
+}
+
+
+