[json-glib] Visual Studio Builds: Don't Generate .def File
- From: Chun-wei Fan <fanchunwei src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [json-glib] Visual Studio Builds: Don't Generate .def File
- Date: Thu, 20 Mar 2014 02:23:47 +0000 (UTC)
commit a8c56f54d5f47e35921e50a63e2a59190da13ad0
Author: Chun-wei Fan <fanchunwei src gnome org>
Date: Thu Mar 20 10:23:36 2014 +0800
Visual Studio Builds: Don't Generate .def File
The symbols for json-glib is now exported via a visibility-based method,
like GLib and GTK+, so do likewise for the Visual Studio builds, by using
__declspec(dllexport). This will also mean that the .def file is no longer
needed to export the symbols for json-glib.
build/win32/config.h.win32.in | 7 +++++
build/win32/vs10/json-glib-gen-srcs.props | 7 -----
build/win32/vs10/json-glib.vcxproj.filtersin | 1 -
build/win32/vs10/json-glib.vcxprojin | 18 ------------
build/win32/vs9/json-glib-gen-srcs.vsprops | 7 -----
build/win32/vs9/json-glib.vcprojin | 38 --------------------------
6 files changed, 7 insertions(+), 71 deletions(-)
---
diff --git a/build/win32/config.h.win32.in b/build/win32/config.h.win32.in
index 05dc55b..f150ce1 100644
--- a/build/win32/config.h.win32.in
+++ b/build/win32/config.h.win32.in
@@ -91,3 +91,10 @@
/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1
+
+/* defines how to decorate public symbols while building */
+#ifdef _MSC_VER
+#define _JSON_EXTERN __declspec(dllexport) extern
+#else
+#define _JSON_EXTERN __attribute__((visibility("default"))) __declspec(dllexport) extern
+#endif
diff --git a/build/win32/vs10/json-glib-gen-srcs.props b/build/win32/vs10/json-glib-gen-srcs.props
index 2022846..f5629eb 100644
--- a/build/win32/vs10/json-glib-gen-srcs.props
+++ b/build/win32/vs10/json-glib-gen-srcs.props
@@ -5,10 +5,6 @@
</ImportGroup>
<PropertyGroup Label="UserMacros">
<CopyConfigH>copy ..\config.h.win32 ..\..\..\config.h</CopyConfigH>
- <JsonGlibGenerateDef>
-echo EXPORTS >$(DefDir)\json-glib.def
-cl /EP ..\..\..\json-glib\json-glib.symbols >>$(DefDir)\json-glib.def
- </JsonGlibGenerateDef>
</PropertyGroup>
<PropertyGroup>
<_PropertySheetDisplayName>jsonglibgensrcsprops</_PropertySheetDisplayName>
@@ -17,8 +13,5 @@ cl /EP ..\..\..\json-glib\json-glib.symbols >>$(DefDir)\json-glib.def
<BuildMacro Include="CopyConfigH">
<Value>$(CopyConfigH)</Value>
</BuildMacro>
- <BuildMacro Include="JsonGlibGenerateDef">
- <Value>$(JsonGlibGenerateDef)</Value>
- </BuildMacro>
</ItemGroup>
</Project>
diff --git a/build/win32/vs10/json-glib.vcxproj.filtersin b/build/win32/vs10/json-glib.vcxproj.filtersin
index 4428831..30ea641 100644
--- a/build/win32/vs10/json-glib.vcxproj.filtersin
+++ b/build/win32/vs10/json-glib.vcxproj.filtersin
@@ -19,6 +19,5 @@
</ItemGroup>
<ItemGroup>
<CustomBuild Include="..\config.h.win32"><Filter>Resource Files</Filter></CustomBuild>
- <CustomBuild Include="..\..\..\json-glib\json-glib.symbols"><Filter>Resource Files</Filter></CustomBuild>
</ItemGroup>
</Project>
diff --git a/build/win32/vs10/json-glib.vcxprojin b/build/win32/vs10/json-glib.vcxprojin
index e896065..b41c6c4 100644
--- a/build/win32/vs10/json-glib.vcxprojin
+++ b/build/win32/vs10/json-glib.vcxprojin
@@ -89,7 +89,6 @@
</ClCompile>
<Link>
<OutputFile>$(OutDir)$(JsonGlibDllPrefix)$(ProjectName)$(JsonGlibDllSuffix).dll</OutputFile>
- <ModuleDefinitionFile>$(IntDir)\json-glib.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
@@ -113,7 +112,6 @@
<Link>
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(JsonGlibDllPrefix)$(ProjectName)$(JsonGlibDllSuffix).dll</OutputFile>
- <ModuleDefinitionFile>$(IntDir)\json-glib.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
@@ -138,7 +136,6 @@
</ClCompile>
<Link>
<OutputFile>$(OutDir)$(JsonGlibDllPrefix)$(ProjectName)$(JsonGlibDllSuffix).dll</OutputFile>
- <ModuleDefinitionFile>$(IntDir)\json-glib.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
@@ -161,7 +158,6 @@
<Link>
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(JsonGlibDllPrefix)$(ProjectName)$(JsonGlibDllSuffix).dll</OutputFile>
- <ModuleDefinitionFile>$(IntDir)\json-glib.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
@@ -188,20 +184,6 @@
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(CopyConfigH)</Command>
<Outputs
Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\config.h;%(Outputs)</Outputs>
</CustomBuild>
- <CustomBuild Include="..\..\..\json-glib\json-glib.symbols">
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating
json-glib.def...</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(JsonGlibGenerateDef)</Command>
- <Outputs
Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)json-glib.def;%(Outputs)</Outputs>
- <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generating json-glib.def...</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(JsonGlibGenerateDef)</Command>
- <Outputs
Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)json-glib.def;%(Outputs)</Outputs>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Generating
json-glib.def...</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(JsonGlibGenerateDef)</Command>
- <Outputs
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)json-glib.def;%(Outputs)</Outputs>
- <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generating
json-glib.def...</Message>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(JsonGlibGenerateDef)</Command>
- <Outputs
Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)json-glib.def;%(Outputs)</Outputs>
- </CustomBuild>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
diff --git a/build/win32/vs9/json-glib-gen-srcs.vsprops b/build/win32/vs9/json-glib-gen-srcs.vsprops
index 117026c..aa4fee6 100644
--- a/build/win32/vs9/json-glib-gen-srcs.vsprops
+++ b/build/win32/vs9/json-glib-gen-srcs.vsprops
@@ -9,11 +9,4 @@
Name="CopyConfigH"
Value="copy ..\config.h.win32 ..\..\..\config.h"
/>
- <UserMacro
- Name="JsonGlibGenerateDef"
- Value="
-echo EXPORTS >$(DefDir)\json-glib.def

-cl /EP ..\..\..\json-glib\json-glib.symbols >>$(DefDir)\json-glib.def
- "
- />
</VisualStudioPropertySheet>
diff --git a/build/win32/vs9/json-glib.vcprojin b/build/win32/vs9/json-glib.vcprojin
index 2fba9e7..4f13c72 100644
--- a/build/win32/vs9/json-glib.vcprojin
+++ b/build/win32/vs9/json-glib.vcprojin
@@ -42,7 +42,6 @@
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(JsonGlibDllPrefix)$(ProjectName)$(JsonGlibDllSuffix).dll"
LinkIncremental="2"
- ModuleDefinitionFile="$(IntDir)\json-glib.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(ApiVersion).lib"
@@ -71,7 +70,6 @@
AdditionalDependencies=""
OutputFile="$(OutDir)\$(JsonGlibDllPrefix)$(ProjectName)$(JsonGlibDllSuffix).dll"
LinkIncremental="2"
- ModuleDefinitionFile="$(IntDir)\json-glib.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(ApiVersion).lib"
@@ -102,7 +100,6 @@
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(JsonGlibDllPrefix)$(ProjectName)$(JsonGlibDllSuffix).dll"
LinkIncremental="1"
- ModuleDefinitionFile="$(IntDir)\json-glib.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
@@ -130,7 +127,6 @@
AdditionalDependencies=""
OutputFile="$(OutDir)\$(JsonGlibDllPrefix)$(ProjectName)$(JsonGlibDllSuffix).dll"
LinkIncremental="2"
- ModuleDefinitionFile="$(IntDir)\json-glib.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
@@ -195,40 +191,6 @@
/>
</FileConfiguration>
</File>
- <File RelativePath="..\..\..\json-glib\json-glib.symbols">
- <FileConfiguration Name="Debug|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="Generating json-glib.def..."
- CommandLine="$(JsonGlibGenerateDef)"
- Outputs="$(IntDir)\json-glib.def"
- />
- </FileConfiguration>
- <FileConfiguration Name="Release|Win32">
- <Tool
- Name="VCCustomBuildTool"
- Description="Generating json-glib.def..."
- CommandLine="$(JsonGlibGenerateDef)"
- Outputs="$(IntDir)\json-glib.def"
- />
- </FileConfiguration>
- <FileConfiguration Name="Debug|x64">
- <Tool
- Name="VCCustomBuildTool"
- Description="Generating json-glib.def..."
- CommandLine="$(JsonGlibGenerateDef)"
- Outputs="$(IntDir)\json-glib.def"
- />
- </FileConfiguration>
- <FileConfiguration Name="Release|x64">
- <Tool
- Name="VCCustomBuildTool"
- Description="Generating json-glib.def..."
- CommandLine="$(JsonGlibGenerateDef)"
- Outputs="$(IntDir)\json-glib.def"
- />
- </FileConfiguration>
- </File>
</Filter>
</Files>
<Globals>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]