]> git.saurik.com Git - wxWidgets.git/commitdiff
include headers in MSVC++ project files
authorVáclav Slavík <vslavik@fastmail.fm>
Sun, 27 Jul 2003 09:50:55 +0000 (09:50 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Sun, 27 Jul 2003 09:50:55 +0000 (09:50 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

build/bakefiles/common.bkl
build/bakefiles/monolithic.bkl
build/bakefiles/multilib.bkl
build/bakefiles/opengl.bkl
build/bakefiles/wxwin.py

index bc42741cbde4e26f124fbad212c079d4b3aee13c..c846c7a3adfa1886c410383d52f23e0478d9c345 100644 (file)
         <set var="BUILDDIR">$(OBJS)</set>
     </if>
     
-    <set var="LIBDIRNAME">
+    <set var="LIBDIRNAME" make_var="1">
         <if cond="FORMAT=='autoconf'">$(top_builddir)lib</if>
         <if cond="FORMAT!='autoconf'">
-            $(TOP_SRCDIR)lib$(DIRSEP)$(COMPILER)_$(CFG_NAME_PART)
+            $(nativePaths(TOP_SRCDIR))lib$(DIRSEP)$(COMPILER)_$(CFG_NAME_PART)
         </if>
     </set>
 
         </if>        
     </template>
 
+    <define-tag name="msvc-headers" rules="dll,lib">
+        <if cond="FORMAT=='msvc6prj'">
+            <msvc-project-files>
+                $(addPrefixToList('include\', wxwin.headersOnly(value)))
+            </msvc-project-files>
+        </if>
+    </define-tag>
+
     <!-- for GUI libs/samples: -->
     <template id="wx_append_nomono" template="wx_append_base_nomono">
         <ldlibs>$(EXTRALIBS_GUI)</ldlibs>
     </template>
     <template id="wx_base_dll" template="wx_dll_b"
                                template_append="wx_append_base_nomono">
+        <depends>wxexpat</depends>
         <depends>wxzlib</depends>
         <depends>wxregex</depends>
     </template>
index 9d0f043a5e5ad99c1c240fb9d3c39ba3375f0a96..b59d87fac959f5f356d367bda5b2d20186992533 100644 (file)
@@ -14,6 +14,7 @@
         <define>wxUSE_BASE=1</define> 
         <define>WXMAKINGDLL</define>
         <sources>$(MONOLIB_SRC)</sources>
+        <msvc-headers>$(ALL_HEADERS)</msvc-headers>
         <ldlibs>$(EXTRALIBS_XML)</ldlibs>
     </dll>
     
@@ -21,6 +22,7 @@
          cond="SHARED=='0' and MONOLITHIC=='1'">
         <define>wxUSE_BASE=1</define> 
         <sources>$(MONOLIB_SRC)</sources>
+        <msvc-headers>$(ALL_HEADERS)</msvc-headers>
     </lib>
 
 </makefile>
index 2222ab8f73a94146401532fd3817601e9ea6e41d..cbb21d4b6d8825015f6f6ce772b22f789dbcd49a 100644 (file)
@@ -13,6 +13,7 @@
         <define>wxUSE_BASE=1</define>
         <define>wxUSE_GUI=0</define> 
         <sources>$(BASE_SRC) $(BASE_AND_GUI_SRC)</sources>
+        <msvc-headers>$(BASE_CMN_HDR) $(BASE_PLATFORM_HDR)</msvc-headers>
     </dll>
     
     <lib id="baselib" template="wx_base_lib"
@@ -20,6 +21,7 @@
         <define>wxUSE_BASE=1</define> 
         <define>wxUSE_GUI=0</define> 
         <sources>$(BASE_SRC) $(BASE_AND_GUI_SRC)</sources>
+        <msvc-headers>$(BASE_CMN_HDR) $(BASE_PLATFORM_HDR)</msvc-headers>
     </lib>
 
     <!-- ================================================================= -->
@@ -32,6 +34,7 @@
         <define>WXMAKINGDLL_CORE</define>
         <define>wxUSE_BASE=0</define> 
         <sources>$(BASE_AND_GUI_SRC) $(CORE_SRC)</sources>
+        <msvc-headers>$(ALL_GUI_HEADERS)</msvc-headers>
         <library>basedll</library>
     </dll>
     
@@ -39,6 +42,7 @@
          cond="SHARED=='0' and USE_GUI=='1' and MONOLITHIC=='0'">
         <define>wxUSE_BASE=0</define> 
         <sources>$(BASE_AND_GUI_SRC) $(CORE_SRC)</sources>
+        <msvc-headers>$(ALL_GUI_HEADERS)</msvc-headers>
     </lib>
 
     
         <sources>$(HTML_SRC)</sources>
         <library>coredll</library>
         <library>basedll</library>
+        <msvc-headers>$(HTML_HDR)</msvc-headers>
     </dll>
     
     <lib id="htmllib" template="wx_lib"
          cond="SHARED=='0' and USE_HTML=='1' and MONOLITHIC=='0'">
         <sources>$(HTML_SRC)</sources>
+        <msvc-headers>$(HTML_HDR)</msvc-headers>
     </lib>
     
     <!-- ================================================================ -->
@@ -76,6 +82,7 @@
         <define>WXUSINGDLL</define>
         <define>WXMAKINGDLL_XML</define>
         <sources>$(XML_SRC)</sources>
+        <msvc-headers>$(XML_HDR)</msvc-headers>
         <library>basedll</library>
         <ldlibs>$(EXTRALIBS_XML)</ldlibs>
     </dll>
@@ -83,6 +90,7 @@
     <lib id="xmllib" template="wx_base_lib"
          cond="SHARED=='0' and MONOLITHIC=='0'">
         <sources>$(XML_SRC)</sources>
+        <msvc-headers>$(XML_HDR)</msvc-headers>
     </lib>
 
 </makefile>
index 56ed96378a2157e11ddad8426f975c9368edb7c7..2d5353c6372c80595320434884abc775e6d113e6 100644 (file)
@@ -19,6 +19,7 @@
         <define>WXUSINGDLL</define>
         <define>WXMAKINGDLL_GL</define>
         <sources>$(OPENGL_SRC)</sources>
+        <msvc-headers>$(OPENGL_HDR)</msvc-headers>
 
         <!-- link against base and core libs in multilib build: --> 
         <sys-lib>$(WXLIBGLDEP_CORE)</sys-lib>
@@ -41,6 +42,7 @@
     <lib id="gllib" template="wx_lib"
          cond="SHARED=='0' and USE_GUI=='1' and USE_OPENGL=='1'">
         <sources>$(OPENGL_SRC)</sources>
+        <msvc-headers>$(OPENGL_HDR)</msvc-headers>
     </lib>
 
 </makefile>
index 69a8d9567b6d3d6bdecdb064ea6efc4aae81a3d6..78c0162b00d8652b462d285619cfd3770d9a13a2 100644 (file)
@@ -106,3 +106,20 @@ def getVersionMinor():
     return getVersion()[1]
 def getVersionRelease():
     return getVersion()[2]
+
+
+def headersOnly(files):
+    """Filters 'files' so that only headers are left. Used with
+       <msvc-project-files> to add headers to VC++ projects but not files such
+       as arrimpl.cpp."""
+    
+    def callback(cond, sources):
+        prf = suf = ''
+        if sources[0].isspace(): prefix=' '
+        if sources[-1].isspace(): suffix=' '
+        retval = []
+        for s in sources.split():
+            if s.endswith('.h'):
+                retval.append(s)
+        return '%s%s%s' % (prf, ' '.join(retval), suf)
+    return utils.substitute2(files, callback)