From e9685e8e834a0b945f120d3c6902783eb32a2560 Mon Sep 17 00:00:00 2001
From: "Emden R. Gansner" <erg@alum.mit.edu>
Date: Mon, 28 Oct 2013 22:03:06 -0400
Subject: [PATCH] Fix bad linking of initialized global variables. It would
 appear files using a library must use a __declspec(dllimport) modifier to
 handle initialized globals such as Agdirected and the default disciplines
 correctly.

---
 lib/cgraph/cgraph.h | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/lib/cgraph/cgraph.h b/lib/cgraph/cgraph.h
index bed73fba1..f1e2bde02 100644
--- a/lib/cgraph/cgraph.h
+++ b/lib/cgraph/cgraph.h
@@ -180,16 +180,11 @@ struct Agdisc_s {		/* user's discipline */
 };
 
 	/* default resource disciplines */
-#if !defined(_BLD_cgraph) && defined(GVDLL)
-#define extern  __declspec(dllimport)
-#endif
 
 /*visual studio*/
-#ifdef WIN32_DLL
-#ifndef CGRAPH_EXPORTS
+#if defined(WIN32) && !defined(CGRAPH_EXPORTS)
 #define extern __declspec(dllimport)
 #endif
-#endif
 /*end visual studio*/
 
 extern Agmemdisc_t AgMemDisc;
@@ -424,8 +419,8 @@ extern agusererrf agseterrf(agusererrf);
 #	define extern  __IMPORT__
 #   endif
 #endif
-#if !defined(_BLD_cgraph) && defined(GVDLL)
-#define extern  __declspec(dllimport)
+#if defined(WIN32) && !defined(CGRAPH_EXPORTS)
+#define extern __declspec(dllimport)
 #endif
 
 extern Agdesc_t Agdirected, Agstrictdirected, Agundirected,
-- 
2.40.0