aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Holme <steve_holme@hotmail.com>2014-05-22 23:05:22 +0100
committerSteve Holme <steve_holme@hotmail.com>2014-05-22 23:10:38 +0100
commita9388b73b1aaa709e3d10ca84eef600f1f36c283 (patch)
tree05eff066de631112e74e3d031cece3a6b0721fd2
parenta7999da39e2788b086f5302f81128a9ad26c274b (diff)
build: Use CURLX_* file lists for Visual Studio curl tool project generation
-rw-r--r--Makefile.am34
-rw-r--r--projects/README1
-rw-r--r--projects/Windows/VC10/src/curlsrc.tmpl12
-rw-r--r--projects/Windows/VC11/src/curlsrc.tmpl12
-rw-r--r--projects/Windows/VC12/src/curlsrc.tmpl12
-rw-r--r--projects/Windows/VC6/src/curlsrc.tmpl42
-rw-r--r--projects/Windows/VC7.1/src/curlsrc.tmpl32
-rw-r--r--projects/Windows/VC7/src/curlsrc.tmpl32
-rw-r--r--projects/Windows/VC8/src/curlsrc.tmpl42
-rw-r--r--projects/Windows/VC9/src/curlsrc.tmpl42
-rw-r--r--projects/generate.bat16
11 files changed, 65 insertions, 212 deletions
diff --git a/Makefile.am b/Makefile.am
index 6a4b15ad9..18cb7d921 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -275,6 +275,8 @@ vc-ide: $(VC6_LIBDSP_DEPS) $(VC6_SRCDSP_DEPS) $(VC7_LIBVCPROJ_DEPS) \
win32_src_srcs='$(CURL_CFILES)'; \
win32_src_hdrs='$(CURL_HFILES)'; \
win32_src_rc='$(CURL_RCFILES)'; \
+ win32_src_x_srcs='$(CURLX_CFILES)'; \
+ win32_src_x_hdrs='$(CURLX_HFILES) ../lib/config-win32.h'; \
\
sorted_lib_srcs=`for file in $$win32_lib_srcs; do echo $$file; done | sort`; \
sorted_lib_hdrs=`for file in $$win32_lib_hdrs; do echo $$file; done | sort`; \
@@ -282,6 +284,8 @@ vc-ide: $(VC6_LIBDSP_DEPS) $(VC6_SRCDSP_DEPS) $(VC7_LIBVCPROJ_DEPS) \
sorted_lib_vtls_hdrs=`for file in $$win32_lib_vtls_hdrs; do echo $$file; done | sort`; \
sorted_src_srcs=`for file in $$win32_src_srcs; do echo $$file; done | sort`; \
sorted_src_hdrs=`for file in $$win32_src_hdrs; do echo $$file; done | sort`; \
+ sorted_src_x_srcs=`for file in $$win32_src_x_srcs; do echo $$file; done | sort`; \
+ sorted_src_x_hdrs=`for file in $$win32_src_x_hdrs; do echo $$file; done | sort`; \
\
awk_code='\
function gen_element(type, dir, file)\
@@ -363,6 +367,20 @@ function gen_element(type, dir, file)\
split(src_rc, arr);\
for(val in arr) gen_element(proj_type, "src", arr[val]);\
}\
+ else if($$0 == "CURL_SRC_X_C_FILES") {\
+ split(src_x_srcs, arr);\
+ for(val in arr) {\
+ sub(/..\/lib\//, "", arr[val]);\
+ gen_element(proj_type, "lib", arr[val]);\
+ }\
+ }\
+ else if($$0 == "CURL_SRC_X_H_FILES") {\
+ split(src_x_hdrs, arr);\
+ for(val in arr) {\
+ sub(/..\/lib\//, "", arr[val]);\
+ gen_element(proj_type, "lib", arr[val]);\
+ }\
+ }\
else\
printf("%s\r\n", $$0);\
}';\
@@ -381,6 +399,8 @@ function gen_element(type, dir, file)\
-v src_srcs="$$sorted_src_srcs" \
-v src_hdrs="$$sorted_src_hdrs" \
-v src_rc="$$win32_src_rc" \
+ -v src_x_srcs="$$sorted_src_x_srcs" \
+ -v src_x_hdrs="$$sorted_src_x_hdrs" \
"$$awk_code" $(srcdir)/$(VC6_SRCTMPL) > $(VC6_SRCDSP) || { exit 1; }; \
\
echo "generating '$(VC7_LIBVCPROJ)'"; \
@@ -397,6 +417,8 @@ function gen_element(type, dir, file)\
-v src_srcs="$$sorted_src_srcs" \
-v src_hdrs="$$sorted_src_hdrs" \
-v src_rc="$$win32_src_rc" \
+ -v src_x_srcs="$$sorted_src_x_srcs" \
+ -v src_x_hdrs="$$sorted_src_x_hdrs" \
"$$awk_code" $(srcdir)/$(VC7_SRCTMPL) > $(VC7_SRCVCPROJ) || { exit 1; }; \
\
echo "generating '$(VC71_LIBVCPROJ)'"; \
@@ -413,6 +435,8 @@ function gen_element(type, dir, file)\
-v src_srcs="$$sorted_src_srcs" \
-v src_hdrs="$$sorted_src_hdrs" \
-v src_rc="$$win32_src_rc" \
+ -v src_x_srcs="$$sorted_src_x_srcs" \
+ -v src_x_hdrs="$$sorted_src_x_hdrs" \
"$$awk_code" $(srcdir)/$(VC71_SRCTMPL) > $(VC71_SRCVCPROJ) || { exit 1; }; \
\
echo "generating '$(VC8_LIBVCPROJ)'"; \
@@ -429,6 +453,8 @@ function gen_element(type, dir, file)\
-v src_srcs="$$sorted_src_srcs" \
-v src_hdrs="$$sorted_src_hdrs" \
-v src_rc="$$win32_src_rc" \
+ -v src_x_srcs="$$sorted_src_x_srcs" \
+ -v src_x_hdrs="$$sorted_src_x_hdrs" \
"$$awk_code" $(srcdir)/$(VC8_SRCTMPL) > $(VC8_SRCVCPROJ) || { exit 1; }; \
\
echo "generating '$(VC9_LIBVCPROJ)'"; \
@@ -445,6 +471,8 @@ function gen_element(type, dir, file)\
-v src_srcs="$$sorted_src_srcs" \
-v src_hdrs="$$sorted_src_hdrs" \
-v src_rc="$$win32_src_rc" \
+ -v src_x_srcs="$$sorted_src_x_srcs" \
+ -v src_x_hdrs="$$sorted_src_x_hdrs" \
"$$awk_code" $(srcdir)/$(VC9_SRCTMPL) > $(VC9_SRCVCPROJ) || { exit 1; }; \
\
echo "generating '$(VC10_LIBVCXPROJ)'"; \
@@ -461,6 +489,8 @@ function gen_element(type, dir, file)\
-v src_srcs="$$sorted_src_srcs" \
-v src_hdrs="$$sorted_src_hdrs" \
-v src_rc="$$win32_src_rc" \
+ -v src_x_srcs="$$sorted_src_x_srcs" \
+ -v src_x_hdrs="$$sorted_src_x_hdrs" \
"$$awk_code" $(srcdir)/$(VC10_SRCTMPL) > $(VC10_SRCVCXPROJ) || { exit 1; }; \
\
echo "generating '$(VC11_LIBVCXPROJ)'"; \
@@ -477,6 +507,8 @@ function gen_element(type, dir, file)\
-v src_srcs="$$sorted_src_srcs" \
-v src_hdrs="$$sorted_src_hdrs" \
-v src_rc="$$win32_src_rc" \
+ -v src_x_srcs="$$sorted_src_x_srcs" \
+ -v src_x_hdrs="$$sorted_src_x_hdrs" \
"$$awk_code" $(srcdir)/$(VC11_SRCTMPL) > $(VC11_SRCVCXPROJ) || { exit 1; }; \
\
echo "generating '$(VC12_LIBVCXPROJ)'"; \
@@ -493,4 +525,6 @@ function gen_element(type, dir, file)\
-v src_srcs="$$sorted_src_srcs" \
-v src_hdrs="$$sorted_src_hdrs" \
-v src_rc="$$win32_src_rc" \
+ -v src_x_srcs="$$sorted_src_x_srcs" \
+ -v src_x_hdrs="$$sorted_src_x_hdrs" \
"$$awk_code" $(srcdir)/$(VC12_SRCTMPL) > $(VC12_SRCVCXPROJ) || { exit 1; };)
diff --git a/projects/README b/projects/README
index 95a248aff..2701f26e3 100644
--- a/projects/README
+++ b/projects/README
@@ -98,7 +98,6 @@ TODO
* Support WinIDN
* Use of static runtime libraries
* Generate *.vcxproj.filters files for VC10, VC11 and VC12
- * Use CURLX_* definitions for curl tool project generation
* Support for other development IDEs
Any additional help would be appreciated ;-) \ No newline at end of file
diff --git a/projects/Windows/VC10/src/curlsrc.tmpl b/projects/Windows/VC10/src/curlsrc.tmpl
index 1e8e4c2eb..0731630d1 100644
--- a/projects/Windows/VC10/src/curlsrc.tmpl
+++ b/projects/Windows/VC10/src/curlsrc.tmpl
@@ -2435,19 +2435,11 @@
</Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
- <ClCompile Include="..\..\..\..\lib\nonblock.c" />
- <ClCompile Include="..\..\..\..\lib\rawstr.c" />
- <ClCompile Include="..\..\..\..\lib\strtoofft.c" />
- <ClCompile Include="..\..\..\..\lib\warnless.c" />
+CURL_SRC_X_C_FILES
CURL_SRC_C_FILES
</ItemGroup>
<ItemGroup>
- <ClInclude Include="..\..\..\..\lib\config-win32.h" />
- <ClInclude Include="..\..\..\..\lib\curl_setup.h" />
- <ClInclude Include="..\..\..\..\lib\nonblock.h" />
- <ClInclude Include="..\..\..\..\lib\rawstr.h" />
- <ClInclude Include="..\..\..\..\lib\strtoofft.h" />
- <ClInclude Include="..\..\..\..\lib\warnless.h" />
+CURL_SRC_X_H_FILES
CURL_SRC_H_FILES
</ItemGroup>
<ItemGroup>
diff --git a/projects/Windows/VC11/src/curlsrc.tmpl b/projects/Windows/VC11/src/curlsrc.tmpl
index 6e6a56572..a4a835555 100644
--- a/projects/Windows/VC11/src/curlsrc.tmpl
+++ b/projects/Windows/VC11/src/curlsrc.tmpl
@@ -2475,19 +2475,11 @@
</Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
- <ClCompile Include="..\..\..\..\lib\nonblock.c" />
- <ClCompile Include="..\..\..\..\lib\rawstr.c" />
- <ClCompile Include="..\..\..\..\lib\strtoofft.c" />
- <ClCompile Include="..\..\..\..\lib\warnless.c" />
+CURL_SRC_X_C_FILES
CURL_SRC_C_FILES
</ItemGroup>
<ItemGroup>
- <ClInclude Include="..\..\..\..\lib\config-win32.h" />
- <ClInclude Include="..\..\..\..\lib\curl_setup.h" />
- <ClInclude Include="..\..\..\..\lib\nonblock.h" />
- <ClInclude Include="..\..\..\..\lib\rawstr.h" />
- <ClInclude Include="..\..\..\..\lib\strtoofft.h" />
- <ClInclude Include="..\..\..\..\lib\warnless.h" />
+CURL_SRC_X_H_FILES
CURL_SRC_H_FILES
</ItemGroup>
<ItemGroup>
diff --git a/projects/Windows/VC12/src/curlsrc.tmpl b/projects/Windows/VC12/src/curlsrc.tmpl
index 8949f5ea1..719cfa77e 100644
--- a/projects/Windows/VC12/src/curlsrc.tmpl
+++ b/projects/Windows/VC12/src/curlsrc.tmpl
@@ -2475,19 +2475,11 @@
</Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
- <ClCompile Include="..\..\..\..\lib\nonblock.c" />
- <ClCompile Include="..\..\..\..\lib\rawstr.c" />
- <ClCompile Include="..\..\..\..\lib\strtoofft.c" />
- <ClCompile Include="..\..\..\..\lib\warnless.c" />
+CURL_SRC_X_C_FILES
CURL_SRC_C_FILES
</ItemGroup>
<ItemGroup>
- <ClInclude Include="..\..\..\..\lib\config-win32.h" />
- <ClInclude Include="..\..\..\..\lib\curl_setup.h" />
- <ClInclude Include="..\..\..\..\lib\nonblock.h" />
- <ClInclude Include="..\..\..\..\lib\rawstr.h" />
- <ClInclude Include="..\..\..\..\lib\strtoofft.h" />
- <ClInclude Include="..\..\..\..\lib\warnless.h" />
+CURL_SRC_X_H_FILES
CURL_SRC_H_FILES
</ItemGroup>
<ItemGroup>
diff --git a/projects/Windows/VC6/src/curlsrc.tmpl b/projects/Windows/VC6/src/curlsrc.tmpl
index e2f1e222b..874136c56 100644
--- a/projects/Windows/VC6/src/curlsrc.tmpl
+++ b/projects/Windows/VC6/src/curlsrc.tmpl
@@ -569,51 +569,13 @@ LINK32=link.exe
# Begin Group "Source Files"
# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\nonblock.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\rawstr.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\strtoofft.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\warnless.c
-# End Source File
+CURL_SRC_X_C_FILES
CURL_SRC_C_FILES
# End Group
# Begin Group "Header Files"
# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE="..\..\..\..\lib\config-win32.h"
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\curl_setup.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\nonblock.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\rawstr.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\strtoofft.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\..\..\lib\warnless.h
-# End Source File
+CURL_SRC_X_H_FILES
CURL_SRC_H_FILES
# End Group
# Begin Group "Resource Files"
diff --git a/projects/Windows/VC7.1/src/curlsrc.tmpl b/projects/Windows/VC7.1/src/curlsrc.tmpl
index 98d0c8396..5482eff4c 100644
--- a/projects/Windows/VC7.1/src/curlsrc.tmpl
+++ b/projects/Windows/VC7.1/src/curlsrc.tmpl
@@ -1217,41 +1217,13 @@
<Filter
Name="Source Files"
Filter="">
- <File
- RelativePath="..\..\..\..\lib\nonblock.c">
- </File>
- <File
- RelativePath="..\..\..\..\lib\rawstr.c">
- </File>
- <File
- RelativePath="..\..\..\..\lib\strtoofft.c">
- </File>
- <File
- RelativePath="..\..\..\..\lib\warnless.c">
- </File>
+CURL_SRC_X_C_FILES
CURL_SRC_C_FILES
</Filter>
<Filter
Name="Header Files"
Filter="">
- <File
- RelativePath="..\..\..\..\lib\config-win32.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\curl_setup.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\nonblock.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\rawstr.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\strtoofft.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\warnless.h">
- </File>
+CURL_SRC_X_H_FILES
CURL_SRC_H_FILES
</Filter>
<Filter
diff --git a/projects/Windows/VC7/src/curlsrc.tmpl b/projects/Windows/VC7/src/curlsrc.tmpl
index cb538ef0c..82ffd7ec3 100644
--- a/projects/Windows/VC7/src/curlsrc.tmpl
+++ b/projects/Windows/VC7/src/curlsrc.tmpl
@@ -1095,41 +1095,13 @@
<Filter
Name="Source Files"
Filter="">
- <File
- RelativePath="..\..\..\..\lib\nonblock.c">
- </File>
- <File
- RelativePath="..\..\..\..\lib\rawstr.c">
- </File>
- <File
- RelativePath="..\..\..\..\lib\strtoofft.c">
- </File>
- <File
- RelativePath="..\..\..\..\lib\warnless.c">
- </File>
+CURL_SRC_X_C_FILES
CURL_SRC_C_FILES
</Filter>
<Filter
Name="Header Files"
Filter="">
- <File
- RelativePath="..\..\..\..\lib\config-win32.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\curl_setup.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\nonblock.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\rawstr.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\strtoofft.h">
- </File>
- <File
- RelativePath="..\..\..\..\lib\warnless.h">
- </File>
+CURL_SRC_X_H_FILES
CURL_SRC_H_FILES
</Filter>
<Filter
diff --git a/projects/Windows/VC8/src/curlsrc.tmpl b/projects/Windows/VC8/src/curlsrc.tmpl
index 78a2861d9..a6a575327 100644
--- a/projects/Windows/VC8/src/curlsrc.tmpl
+++ b/projects/Windows/VC8/src/curlsrc.tmpl
@@ -3764,51 +3764,13 @@
<Filter
Name="Source Files"
>
- <File
- RelativePath="..\..\..\..\lib\nonblock.c"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\rawstr.c"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\strtoofft.c"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\warnless.c"
- >
- </File>
+CURL_SRC_X_C_FILES
CURL_SRC_C_FILES
</Filter>
<Filter
Name="Header Files"
>
- <File
- RelativePath="..\..\..\..\lib\config-win32.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\curl_setup.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\nonblock.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\rawstr.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\strtoofft.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\warnless.h"
- >
- </File>
+CURL_SRC_X_H_FILES
CURL_SRC_H_FILES
</Filter>
<Filter
diff --git a/projects/Windows/VC9/src/curlsrc.tmpl b/projects/Windows/VC9/src/curlsrc.tmpl
index 5b11ab596..6cb28f509 100644
--- a/projects/Windows/VC9/src/curlsrc.tmpl
+++ b/projects/Windows/VC9/src/curlsrc.tmpl
@@ -3725,51 +3725,13 @@
<Filter
Name="Source Files"
>
- <File
- RelativePath="..\..\..\..\lib\nonblock.c"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\rawstr.c"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\strtoofft.c"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\warnless.c"
- >
- </File>
+CURL_SRC_X_C_FILES
CURL_SRC_C_FILES
</Filter>
<Filter
Name="Header Files"
>
- <File
- RelativePath="..\..\..\..\lib\config-win32.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\curl_setup.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\nonblock.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\rawstr.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\strtoofft.h"
- >
- </File>
- <File
- RelativePath="..\..\..\..\lib\warnless.h"
- >
- </File>
+CURL_SRC_X_H_FILES
CURL_SRC_H_FILES
</Filter>
<Filter
diff --git a/projects/generate.bat b/projects/generate.bat
index 45b266325..4ac5fe296 100644
--- a/projects/generate.bat
+++ b/projects/generate.bat
@@ -6,7 +6,7 @@ rem * / __| | | | |_) | |
rem * | (__| |_| | _ <| |___
rem * \___|\___/|_| \_\_____|
rem *
-rem * Copyright (C) 2014, Steve Holme, <steve_holme@hotmail.com>
+rem * Copyright (C) 2014, Steve Holme, <steve_holme@hotmail.com>.
rem *
rem * This software is licensed as described in the file COPYING, which
rem * you should have received as part of this distribution. The terms
@@ -92,6 +92,20 @@ rem
for /f "delims=" %%h in ('dir /b ..\src\*.h') do call :element %1 src "%%h" %3
) else if "!var!" == "CURL_SRC_RC_FILES" (
for /f "delims=" %%r in ('dir /b ..\src\*.rc') do call :element %1 src "%%r" %3
+ ) else if "!var!" == "CURL_SRC_X_C_FILES" (
+ call :element %1 lib "strtoofft.c" %3
+ call :element %1 lib "strdup.c" %3
+ call :element %1 lib "rawstr.c" %3
+ call :element %1 lib "nonblock.c" %3
+ call :element %1 lib "warnless.c" %3
+ ) else if "!var!" == "CURL_SRC_X_H_FILES" (
+ call :element %1 lib "config-win32.h" %3
+ call :element %1 lib "curl_setup.h" %3
+ call :element %1 lib "strtoofft.h" %3
+ call :element %1 lib "strdup.h" %3
+ call :element %1 lib "rawstr.h" %3
+ call :element %1 lib "nonblock.h" %3
+ call :element %1 lib "warnless.h" %3
) else if "!var!" == "CURL_LIB_C_FILES" (
for /f "delims=" %%c in ('dir /b ..\lib\*.c') do call :element %1 lib "%%c" %3
) else if "!var!" == "CURL_LIB_H_FILES" (