Robert Story wrote:
On Tue, 26 Apr 2005 21:34:57 -0400 Alex wrote:
AB> If there are no objections, I would like to clean up the ifdefs for AB> WIN32, mingw and cygwin and document it as:


Sounds ok to me. As long as it's ok with Andy (and any other win32 users
lurking out there), go for it.

I have applied the changes to main and V5-2-Patches so I can continue with some other work. I will probably apply it to V5-1-Patches also. I have attached the patch in case you want to see what was done. The patch also has a README.win32 update regarding spaces in folders.


I didn't give much time for objections, but I can easily reverse the patch..

Alex
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/at.c        
Mon Mar 15 17:27:28 2004
+++ agent/mibgroup/mibII/at.c   Sat Apr 30 15:42:08 2005
@@ -29,7 +29,7 @@
 #endif
 #include <sys/types.h>
 #if TIME_WITH_SYS_TIME
-# ifdef WIN32
+# if defined (WIN32) || defined (cygwin)
 #  include <sys/timeb.h>
 # else
 # include <sys/time.h>
@@ -113,7 +113,6 @@
 #endif
 
 #ifdef cygwin
-#define WIN32
 #include <windows.h>
 #endif
 
@@ -124,7 +123,7 @@
         *
         *********************/
 
-#ifndef WIN32
+#if !defined (WIN32) && !defined (cygwin)
 #ifndef solaris2
 static void     ARP_Scan_Init(void);
 #ifdef ARP_SCAN_FOUR_ARGUMENTS
@@ -169,7 +168,7 @@
 #endif
 }
 
-#ifndef WIN32
+#if !defined (WIN32) && !defined (cygwin)
 #ifndef solaris2
 
 /*
@@ -804,7 +803,7 @@
 }
 #endif                          /* solaris2 */
 
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin */
 #include <iphlpapi.h>
 
 extern WriteMethod write_arp;
@@ -1221,4 +1220,4 @@
     }
     return retval;
 }
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
--- 
../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/interfaces.c    
    Mon Jan  3 09:51:32 2005
+++ agent/mibgroup/mibII/interfaces.c   Sat Apr 30 15:42:24 2005
@@ -57,7 +57,7 @@
 #endif
 
 #if TIME_WITH_SYS_TIME
-# ifdef WIN32
+# if defined (WIN32) || defined (cygwin)
 #  include <sys/timeb.h>
 # else
 # include <sys/time.h>
@@ -167,7 +167,6 @@
 #endif                          /* hpux */
 
 #ifdef cygwin
-#define WIN32
 #include <windows.h>
 #endif
 
@@ -223,7 +222,7 @@
     {IFMTU, ASN_INTEGER, RONLY, var_ifEntry, 3, {2, 1, 4}},
     {IFSPEED, ASN_GAUGE, RONLY, var_ifEntry, 3, {2, 1, 5}},
     {IFPHYSADDRESS, ASN_OCTET_STR, RONLY, var_ifEntry, 3, {2, 1, 6}},
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     {IFADMINSTATUS, ASN_INTEGER, RWRITE, var_ifEntry, 3, {2, 1, 7}},
 #else
     {IFADMINSTATUS, ASN_INTEGER, RONLY, var_ifEntry, 3, {2, 1, 7}},
@@ -327,7 +326,7 @@
  * write_method
  * 
  */
-#ifndef WIN32
+#if !defined (WIN32) && !defined (cygwin)
 static int
 header_ifEntry(struct variable *vp,
                oid * name,
@@ -2523,7 +2522,7 @@
 #endif                          /* HAVE_NET_IF_MIB_H */
 #endif                          /* !USE_SYSCTL_IFLIST */
 
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin */
 #include <iphlpapi.h>
 
 WriteMethod     writeIfEntry;
@@ -2809,4 +2808,4 @@
     }
     return SNMP_ERR_NOERROR;
 }                               /* end of writeIfEntry */
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/ipAddr.c    
Sat Feb 12 07:07:34 2005
+++ agent/mibgroup/mibII/ipAddr.c       Sat Apr 30 15:42:37 2005
@@ -121,7 +121,6 @@
 #include "sysORTable.h"
 
 #ifdef cygwin
-#define WIN32
 #include <windows.h>
 #endif
 
@@ -144,7 +143,7 @@
         *
         *********************/
 
-#ifndef WIN32
+#if !defined (WIN32) && !defined (cygwin)
 
 #if !defined(CAN_USE_SYSCTL) || !defined(IPCTL_STATS)
 #ifndef solaris2
@@ -943,7 +942,7 @@
 
 #endif                          /* CAN_USE_SYSCTL && IPCTL_STATS */
 
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin */
 #include <iphlpapi.h>
 u_char         *
 var_ipAddrEntry(struct variable *vp,
@@ -1049,4 +1048,4 @@
     }
     return NULL;
 }
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
--- 
../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/route_write.c   
    Thu Jul  8 20:31:42 2004
+++ agent/mibgroup/mibII/route_write.c  Sat Apr 30 15:42:51 2005
@@ -75,11 +75,10 @@
 #include "route_write.h"
 
 #ifdef cygwin
-#define WIN32
 #include <windows.h>
 #endif
 
-#ifndef WIN32
+#if !defined (WIN32) && !defined (cygwin)
 
 #ifndef STRUCT_RTENTRY_HAS_RT_DST
 #define rt_dst rt_nodes->rn_key
@@ -551,7 +550,7 @@
     return SNMP_ERR_NOERROR;
 }
 
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin */
 #include <iphlpapi.h>
 
 extern PMIB_IPFORWARDROW route_row;
@@ -786,4 +785,4 @@
     return retval;
 }
 
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
--- 
../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/mibII_common.h  
    Sat Jul 17 01:55:10 2004
+++ agent/mibgroup/mibII/mibII_common.h Sat Apr 30 15:22:28 2005
@@ -103,6 +103,5 @@
 #endif
 
 #ifdef cygwin
-#define WIN32
 #include <windows.h>
 #endif
--- 
../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/route_headers.h 
    Fri Feb 21 22:14:22 2003
+++ agent/mibgroup/mibII/route_headers.h        Sat Apr 30 15:24:12 2005
@@ -42,7 +42,7 @@
 #include <sys/socket.h>
 #endif
 #if TIME_WITH_SYS_TIME
-# ifdef WIN32
+# if defined (WIN32) || defined (cygwin)
 #  include <sys/timeb.h>
 # else
 # include <sys/time.h>
@@ -178,7 +178,6 @@
 #endif
 
 #ifdef cygwin
-#define WIN32
 #include <windows.h>
 #endif
 
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/icmp.c      
Sun Jun 27 21:33:22 2004
+++ agent/mibgroup/mibII/icmp.c Sat Apr 30 15:44:03 2005
@@ -116,7 +116,7 @@
 #define USES_SNMP_DESIGNED_ICMPSTAT
 #endif
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 #include <iphlpapi.h>
 #define ICMP_STAT_STRUCTURE MIB_ICMP
 #endif
@@ -399,7 +399,7 @@
         break;
 #else                          /* hpux11 */
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     case ICMPINMSGS:
         ret_value = icmpstat.stats.icmpInStats.dwMsgs;
         break;
@@ -478,7 +478,7 @@
     case ICMPOUTADDRMASKREPS:
         ret_value = icmpstat.stats.icmpOutStats.dwAddrMaskReps;
         break;
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
 #endif                          /* hpux11 */
 #endif                          /* USES_TRADITIONAL_ICMPSTAT */
 #endif                          /* USES_SNMP_DESIGNED_ICMPSTAT */
@@ -660,7 +660,7 @@
     return ret_value;
 }
 #else          /* solaris2 */
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 int
 icmp_load(netsnmp_cache *cache, void *vmagic)
 {
@@ -675,7 +675,7 @@
     }
     return ret_value;
 }
-#else          /* WIN32 */
+#else          /* WIN32 cygwin */
 #if (defined(CAN_USE_SYSCTL) && defined(ICMPCTL_STATS))
 int
 icmp_load(netsnmp_cache *cache, void *vmagic)
@@ -740,7 +740,7 @@
 #endif         /* ICMPSTAT_SYMBOL */
 #endif         /* HAVE_SYS_TCPIPSTATS_H */
 #endif         /* CAN_USE_SYSCTL && ICMPCTL_STATS */
-#endif         /* WIN32 */
+#endif         /* WIN32 cygwin */
 #endif         /* solaris2 */
 #endif         /* linux */
 #endif         /* hpux11 */
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/ip.c        
Sun Jun 27 21:33:22 2004
+++ agent/mibgroup/mibII/ip.c   Sat Apr 30 15:44:18 2005
@@ -82,7 +82,7 @@
 
 struct variable1 ipmedia_variables[] = {
 #ifdef USING_MIBII_AT_MODULE
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     {IPMEDIAIFINDEX,     ASN_INTEGER,   RWRITE, var_atEntry, 1, {1}},
     {IPMEDIAPHYSADDRESS, ASN_OCTET_STR, RWRITE, var_atEntry, 1, {2}},
     {IPMEDIANETADDRESS,  ASN_IPADDRESS, RWRITE, var_atEntry, 1, {3}},
@@ -188,13 +188,13 @@
 #define        USES_SNMP_DESIGNED_IPSTAT
 #endif
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 #include <iphlpapi.h>
 #define IP_STAT_STRUCTURE MIB_IPSTATS
 long            ipForwarding;
 long            oldipForwarding;
 long            ipTTL, oldipTTL;
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
 
 #ifdef HAVE_SYS_TCPIPSTATS_H
 #define IP_STAT_STRUCTURE      struct kna
@@ -494,7 +494,7 @@
         break;
 #else                  /* hpux11 */
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     case IPFORWARDING:
         ipForwarding = ipstat.dwForwarding;
         ret_value    = ipstat.dwForwarding;
@@ -560,7 +560,7 @@
     case IPROUTEDISCARDS:
         ret_value = ipstat.dwRoutingDiscards;
         break;
-#endif                  /* WIN32 */
+#endif                  /* WIN32 || cygwin */
 #endif                  /* hpux11 */
 #endif                  /* USE_TRADITIONAL_IPSTAT */
 #endif                 /* USES_SNMP_DESIGNED_IPSTAT */
@@ -739,7 +739,7 @@
     return ret_value;
 }
 #else                           /* solaris2 */
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 int
 ip_load(netsnmp_cache *cache, void *vmagic)
 {
@@ -754,7 +754,7 @@
     }
     return ret_value;
 }
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin */
 #if (defined(CAN_USE_SYSCTL) && defined(IPCTL_STATS))
 int
 ip_load(netsnmp_cache *cache, void *vmagic)
@@ -882,7 +882,7 @@
 #endif                          /* hpux11 */
 #endif                          /* linux */
 #endif                          /* solaris2 */
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
 
 void
 ip_free(netsnmp_cache *cache, void *magic)
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/tcp.c       
Sun Jun 27 21:33:22 2004
+++ agent/mibgroup/mibII/tcp.c  Sat Apr 30 15:44:36 2005
@@ -155,7 +155,7 @@
 #define USES_SNMP_DESIGNED_TCPSTAT
 #endif
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 #include <iphlpapi.h>
 #define TCP_STAT_STRUCTURE     MIB_TCPSTATS
 #endif
@@ -415,7 +415,7 @@
         break;
 #else                  /* hpux11 */
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     case TCPRTOALGORITHM:
         ret_value = tcpstat.dwRtoAlgorithm;
         type = ASN_INTEGER;
@@ -463,7 +463,7 @@
     case TCPOUTRSTS:
         ret_value = tcpstat.dwOutRsts;
         break;
-#endif                 /* WIN32 */
+#endif                 /* WIN32 cygwin */
 #endif                 /* hpux11 */
 #endif                 /* USES_TRADITIONAL_TCPSTAT */
 #endif                 /* USES_SNMP_DESIGNED_TCPSTAT */
@@ -640,7 +640,7 @@
     return ret_value;
 }
 #else                           /* solaris2 */
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 int
 tcp_load(netsnmp_cache *cache, void *vmagic)
 {
@@ -655,7 +655,7 @@
     }
     return ret_value;
 }
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin */
 #if (defined(CAN_USE_SYSCTL) && defined(TCPCTL_STATS))
 int
 tcp_load(netsnmp_cache *cache, void *vmagic)
@@ -721,7 +721,7 @@
 #endif                          /* hpux11 */
 #endif                          /* linux */
 #endif                          /* solaris2 */
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
 
 
 void
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/tcpTable.c  
Sat Feb 12 04:17:20 2005
+++ agent/mibgroup/mibII/tcpTable.c     Sat Apr 30 15:45:12 2005
@@ -60,7 +60,7 @@
 #define        TCPTABLE_IS_LINKED_LIST
 #else
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 #include <iphlpapi.h>
 #define        TCPTABLE_ENTRY_TYPE     MIB_TCPROW
 #define        TCPTABLE_STATE          dwState 
@@ -98,7 +98,7 @@
 #define        TCPTABLE_IS_LINKED_LIST
 
 #endif                          /* linux */
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
 #endif                          /* solaris2 */
 #endif                          /* hpux11 */
 
@@ -155,9 +155,9 @@
     iinfo->get_first_data_point = tcpTable_first_entry;
     iinfo->get_next_data_point  = tcpTable_next_entry;
     iinfo->table_reginfo        = table_info;
-#if defined(WIN32) || defined(solaris2)
+#if defined (WIN32) || defined (cygwin) || defined (solaris2)
     iinfo->flags               |= NETSNMP_ITERATOR_FLAG_SORTED;
-#endif /* WIN32 || solaris2 */
+#endif /* WIN32 || cygwin || solaris2 */
 
 
     /*
@@ -326,7 +326,7 @@
      * Set up the indexing for the specified row...
      */
     idx = index;
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     port = ntohl((u_long)tcp_head[i].TCPTABLE_LOCALADDRESS);
     snmp_set_var_value(idx, (u_char *)&port,
                                 sizeof(tcp_head[i].TCPTABLE_LOCALADDRESS));
@@ -340,7 +340,7 @@
     snmp_set_var_value(idx, (u_char*)&port, sizeof(port));
 
     idx = idx->next_variable;
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     port = ntohl((u_long)tcp_head[i].TCPTABLE_REMOTEADDRESS);
     snmp_set_var_value(idx, (u_char *)&port,
                                 sizeof(tcp_head[i].TCPTABLE_REMOTEADDRESS));
@@ -366,7 +366,7 @@
 void
 tcpTable_free(netsnmp_cache *cache, void *magic)
 {
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     if (tcp_head) {
                /* the allocated structure is a count followed by table entries 
*/
                free((char *)(tcp_head) - sizeof(DWORD));
@@ -646,7 +646,7 @@
 }
 #else                           /* solaris2 */
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 int
 tcpTable_load(netsnmp_cache *cache, void *vmagic)
 {
@@ -692,7 +692,7 @@
                free(pTcpTable);
     return -1;
 }
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin */
 
 #if (defined(CAN_USE_SYSCTL) && defined(TCPCTL_PCBLIST))
 
@@ -873,7 +873,7 @@
 #endif                         /* UDB_SYMBOL */
 #endif                         /* PCB_TABLE */
 #endif         /* (defined(CAN_USE_SYSCTL) && defined(TCPCTL_PCBLIST)) */
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
 #endif                          /* linux */
 #endif                          /* solaris2 */
 #endif                          /* hpux11 */
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/udpTable.c  
Wed Jul 21 02:26:20 2004
+++ agent/mibgroup/mibII/udpTable.c     Sat Apr 30 15:45:34 2005
@@ -54,7 +54,7 @@
 #define        UDPTABLE_IS_LINKED_LIST
 #else
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 #include <iphlpapi.h>
 #define        UDPTABLE_ENTRY_TYPE     MIB_UDPROW              /* ??? */
 #define        UDPTABLE_LOCALADDRESS   dwLocalAddr
@@ -83,7 +83,7 @@
 #endif
 #define        UDPTABLE_IS_LINKED_LIST
 
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
 #endif                          /* solaris2 */
 #endif                          /* hpux11 */
 
@@ -137,9 +137,9 @@
     iinfo->get_first_data_point = udpTable_first_entry;
     iinfo->get_next_data_point  = udpTable_next_entry;
     iinfo->table_reginfo        = table_info;
-#if defined(WIN32) || defined(solaris2)
+#if defined (WIN32) || defined (cygwin) || defined (solaris2)
     iinfo->flags               |= NETSNMP_ITERATOR_FLAG_SORTED;
-#endif /* WIN32 || solaris2 */
+#endif /* WIN32 || cygwin || solaris2 */
 
 
     /*
@@ -278,7 +278,7 @@
     /*
      * Set up the indexing for the specified row...
      */
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     port = ntohl((u_long)udp_head[i].UDPTABLE_LOCALADDRESS);
     snmp_set_var_value(index, (u_char *)&port,
                                   sizeof(udp_head[i].UDPTABLE_LOCALADDRESS));
@@ -301,7 +301,7 @@
 void
 udpTable_free(netsnmp_cache *cache, void *magic)
 {
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
     if (udp_head) {
                /* the allocated structure is a count followed by table entries 
*/
                free((char *)(udp_head) - sizeof(DWORD));
@@ -554,7 +554,7 @@
 }
 #else                           /* solaris2 */
 
-#ifdef WIN32
+#if defined (WIN32) || defined (cygwin)
 int
 udpTable_load(netsnmp_cache *cache, void *vmagic)
 {
@@ -586,7 +586,7 @@
        free(pUdpTable);
     return -1;
 }
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin*/
 
 #if (defined(CAN_USE_SYSCTL) && defined(UDPCTL_PCBLIST))
 int
@@ -737,7 +737,7 @@
 #endif                         /* UDB_SYMBOL */
 #endif                         /* PCB_TABLE */
 #endif         /* (defined(CAN_USE_SYSCTL) && defined(UDPCTL_PCBLIST)) */
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin*/
 #endif                          /* linux */
 #endif                          /* solaris2 */
 #endif                          /* hpux11 */
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/agent/mibgroup/mibII/var_route.c 
Fri Dec 10 08:41:42 2004
+++ agent/mibgroup/mibII/var_route.c    Sat Apr 30 15:45:52 2005
@@ -73,7 +73,7 @@
 
 extern WriteMethod write_rte;
 
-#ifndef WIN32
+#if !defined (WIN32) && !defined (cygwin)
 
 #ifdef USE_SYSCTL_ROUTE_DUMP
 
@@ -1393,7 +1393,7 @@
 
 #endif                          /* solaris2 */
 
-#else                           /* WIN32 */
+#else                           /* WIN32 cygwin */
 #include <iphlpapi.h>
 #ifndef MIB_IPPROTO_NETMGMT
 #define MIB_IPPROTO_NETMGMT 3
@@ -1617,7 +1617,7 @@
     return NULL;
 }
 
-#endif                          /* WIN32 */
+#endif                          /* WIN32 cygwin */
 
 #else                           /* CAN_USE_SYSCTL */
 
@@ -1957,7 +1957,7 @@
 
     switch (family) {
 #ifndef cygwin
-#ifndef WIN32
+#if !defined (WIN32) && !defined (cygwin)
 #ifdef AF_UNIX
     case AF_UNIX:
         length = sizeof(struct sockaddr_un);
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/README.win32     Sat Jan 22 
14:39:46 2005
+++ README.win32        Sat Apr 30 20:00:26 2005
@@ -30,6 +30,7 @@
 Configuring Net-SNMP
 How to Register the Net-SNMP Agent and Trap Daemon as Windows services
 Notes on SET support for WIN32 ports
+Notes on preprocessor defines for MSVC, MinGW and Cygwin
 Acknowledgements
 
 
@@ -947,7 +948,10 @@
        --enable-ipv6 --with-transports="TCPIPv6 UDPIPv6" \
        --with-libs="-lws2_32" \
 
-
+Note:  The source code should *not* be in a folder that contains a space.  For
+       example, compiling in your 'My Documents' or your Desktop (usually
+       c:\Documents and Settings\xxxx\Desktop) is not supported.
+        
 This has been tested for Windows 98 and Windows NT 4.0.  In order for
 the process part of the host resources MIB to work under NT you will need
 to get hold of the PSAPI.DLL. This available under the download section
@@ -982,6 +986,10 @@
 
         http://www.boedog.com/net-snmp/gnu_regex/regex-0-12-mingw-r2.tar.gz
 
+Note:  The source code should *not* be in a folder that contains a space.  For
+       example, compiling in your 'My Documents' or your Desktop (usually
+       c:\Documents and Settings\xxxx\Desktop) is not supported.
+       
 1.  Build and install GNU regex following the instructions in the 
     regex-0-12-mingw-r2 README.
 
@@ -1027,7 +1035,7 @@
     system environment variables or registry keys as explained in the 
     'Configuration_Overview.html' file located in win32/dist/htmlhelp.
 
-
+       
 ***************************************************************************
 *
 * MinGW - Building with OpenSSL
@@ -1339,7 +1347,41 @@
 be set by a management station is deleteTCB(12)
 
 
+***************************************************************************
+*
+* Notes on preprocessor defines for MSVC, MinGW and Cygwin
+*
+***************************************************************************
+
+When adding Windows specific code, one or more of the following defines should
+be used:
+
+Define:                  Description:
+-------                  ------------
+WIN32                    Defined by MSVC & MinGW
+
+_MSC_VER                 Defined by MSVC only (standard MSVC macro)
+
+mingw32                  Defined by MinGW only
+
+cygwin                   Defined by Cygwin only
+
+HAVE_WIN32_PLATFORM_SDK  Should be defined if the Microsoft Platform SDK is
+                         installed and registered with MSVC or enabled for
+                         MinGW or Cygwin
 
+MinGW and Cygwin do not require the Microsoft Platform SDK as they both should
+contain most if not all of the functionality provided by the SDK.  When adding
+code that requires the PSDK under MSVC, the following can usually be used:
+
+ #if defined (HAVE_WIN32_PLATFORM_SDK) || defined (mingw32) || defined (cygwin)
+                         
+As listed above, Cygwin does NOT define WIN32.  When adding generic Windows 
+code that will work with MSVC, MinGW and Cygwin, the following should be used:
+
+ #if defined (WIN32) || defined (cygwin)
+
+  
 ***************************************************************************
 *
 * Acknowledgements
--- ../../net-snmp-main-4-28-04.fresh/net-snmp/perl/SNMP/README Wed Jun  2 
08:37:52 2004
+++ perl/SNMP/README    Sat Apr 30 20:05:10 2005
@@ -136,7 +136,11 @@
       failure of test #3 in the SNMP conf test (perl/SNMP/t/conf.t).  The 
       change to the SNMPCONFPATH env variable is not seen by the calls to the 
       C SNMP module.
-      
+
+Note: The source code should *not* be in a folder that contains a space.  For
+      example, compiling in your 'My Documents' or your Desktop (usually
+      c:\Documents and Settings\xxxx\Desktop) is not supported.
+     
 Automatic building / testing with nmakeperl.bat:
 
 1.  Ensure a static version of Net-SNMP has been compiled and installed.  Also
@@ -205,10 +209,10 @@
 
         Example: "C:\winnt\system32\gnu_regex.dll"
 
-4.  Set the environment PATH to locate "nmake", "cl", and "link".
+3.  Set the environment PATH to locate "nmake", "cl", and "link".
     Visual Studio installs a VCVARS32.BAT for this purpose.
 
-3.  Using a command prompt window, cd to the perl directory.
+4.  Using a command prompt window, cd to the perl directory.
 
 5.  Type: 
 
@@ -254,6 +258,10 @@
 the regex library.  Install regex from 
 http://mirrors.sunsite.dk/cygwin/release/regex/regex-4.4-2-src.tar.bz2
 
+Note: The source code should *not* be in a folder that contains a space.  For
+      example, compiling in your 'My Documents' or your Desktop (usually
+      c:\Documents and Settings\xxxx\Desktop) is not supported.
+
 
 Win32 (MinGW):
 
@@ -264,6 +272,10 @@
        modules may not work.  For example, sharing configurations between
        modules which is why the SNMP conf test fails.
 
+Note: The source code should *not* be in a folder that contains a space.  For
+      example, compiling in your 'My Documents' or your Desktop (usually
+      c:\Documents and Settings\xxxx\Desktop) is not supported.
+       
 These directions are for MinGW 3.1.0 with MSYS 1.0.9 and ActiveState Perl.
 Compiling the Perl modules using a MinGW built Perl environment has not
 been tested.

Reply via email to