Codebase list faad2 / ce72f58
Generate "win32_ver.h" from "configure.h" as a pre-build event + some clean-up of project files. LoRd_MuldeR 6 years ago
10 changed file(s) with 138 addition(s) and 22 deletion(s). Raw diff Collapse all Expand all
1515 project/msvc/.vs/
1616 project/msvc/bin/
1717 project/msvc/intermediate/
18 libfaad/win32_ver.h
13481348
13491349 int main(int argc, char *argv[])
13501350 {
1351 #ifdef _WIN32
1351 #if defined WIN32 || defined _WIN32 || defined WIN64 || defined _WIN64
13521352 int argc_utf8, exit_code;
13531353 char **argv_utf8;
13541354 init_console_utf8(stderr);
5050
5151 #ifdef ANALYSIS
5252 uint16_t dbg_count;
53 #endif
54
55 #if defined WIN32 || defined _WIN32 || defined WIN64 || defined _WIN64
56 #include "win32_ver.h"
5357 #endif
5458
5559 /* static function declarations */
1111 </ItemGroup>
1212 <PropertyGroup Label="Globals">
1313 <ProjectGuid>{FE985E4D-79DB-4DD3-BFED-824B4677A161}</ProjectGuid>
14 <WindowsTargetPlatformVersion>10.0.10240.0</WindowsTargetPlatformVersion>
14 <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
1515 </PropertyGroup>
1616 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
1717 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
5858 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
5959 <ClCompile>
6060 <Optimization>Disabled</Optimization>
61 <PreprocessorDefinitions>_DEBUG;WIN32;_CONSOLE;TEST;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
61 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_DEBUG;WIN32;_CONSOLE;TEST;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
6262 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
6363 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
6464 <PrecompiledHeader />
7979 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
8080 <ClCompile>
8181 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
82 <PreprocessorDefinitions>NDEBUG;WIN32;_CONSOLE;TEST;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
82 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NDEBUG;WIN32;_CONSOLE;TEST;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8383 <StringPooling>true</StringPooling>
8484 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
8585 <FunctionLevelLinking>true</FunctionLevelLinking>
5858 <ClCompile>
5959 <Optimization>Disabled</Optimization>
6060 <AdditionalIncludeDirectories>../../include;../../common/mp4ff;../../frontend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
61 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
61 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
6262 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
6363 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
6464 <PrecompiledHeader />
8484 <IntrinsicFunctions>true</IntrinsicFunctions>
8585 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
8686 <AdditionalIncludeDirectories>../../include;../../common/mp4ff;../../frontend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
87 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
87 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8888 <StringPooling>true</StringPooling>
8989 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
9090 <FunctionLevelLinking>true</FunctionLevelLinking>
103103 <ClCompile Include="..\..\frontend\audio.c" />
104104 <ClCompile Include="..\..\frontend\main.c" />
105105 <ClCompile Include="..\..\frontend\mp4read.c" />
106 <ClCompile Include="..\..\frontend\unicode_support.c" />
106107 </ItemGroup>
107108 <ItemGroup>
108109 <ClInclude Include="..\..\frontend\getopt.h" />
109 <ClInclude Include="..\..\common\mp4v2\mp4.h" />
110 <ClInclude Include="..\..\common\mp4v2\mpeg4ip.h" />
111 <ClInclude Include="..\..\common\mp4v2\systems.h" />
112110 <ClInclude Include="..\..\common\mp4v2\win32_ver.h" />
113111 <ClInclude Include="..\..\frontend\mp4read.h" />
112 <ClInclude Include="..\..\frontend\unicode_support.h" />
114113 <ClInclude Include="..\..\include\neaacdec.h" />
115114 <ClInclude Include="..\..\frontend\audio.h" />
116115 </ItemGroup>
1919 <ClCompile Include="..\..\frontend\mp4read.c">
2020 <Filter>Source Files</Filter>
2121 </ClCompile>
22 <ClCompile Include="..\..\frontend\unicode_support.c">
23 <Filter>Source Files</Filter>
24 </ClCompile>
2225 </ItemGroup>
2326 <ItemGroup>
2427 <ClInclude Include="..\..\frontend\audio.h">
2730 <ClInclude Include="..\..\frontend\getopt.h">
2831 <Filter>Header Files</Filter>
2932 </ClInclude>
30 <ClInclude Include="..\..\common\mp4v2\mp4.h">
31 <Filter>Header Files</Filter>
32 </ClInclude>
33 <ClInclude Include="..\..\common\mp4v2\mpeg4ip.h">
34 <Filter>Header Files</Filter>
35 </ClInclude>
3633 <ClInclude Include="..\..\include\neaacdec.h">
37 <Filter>Header Files</Filter>
38 </ClInclude>
39 <ClInclude Include="..\..\common\mp4v2\systems.h">
4034 <Filter>Header Files</Filter>
4135 </ClInclude>
4236 <ClInclude Include="..\..\common\mp4v2\win32_ver.h">
4539 <ClInclude Include="..\..\frontend\mp4read.h">
4640 <Filter>Header Files</Filter>
4741 </ClInclude>
42 <ClInclude Include="..\..\frontend\unicode_support.h">
43 <Filter>Header Files</Filter>
44 </ClInclude>
4845 </ItemGroup>
4946 </Project>
5454 <Optimization>MaxSpeed</Optimization>
5555 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
5656 <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
57 <PreprocessorDefinitions>NDEBUG;WIN32;_LIB;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
57 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NDEBUG;WIN32;_LIB;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5858 <StringPooling>true</StringPooling>
5959 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
6060 <FunctionLevelLinking>true</FunctionLevelLinking>
6666 <Culture>0x0413</Culture>
6767 </ResourceCompile>
6868 <Lib />
69 <PreBuildEvent>
70 <Command>"$(SolutionDir)..\..\utils\win32\ac2ver.exe" "faad2" "$(SolutionDir)..\..\configure.ac" &gt; "$(SolutionDir)..\..\libfaad\win32_ver.h"</Command>
71 </PreBuildEvent>
72 <PreBuildEvent>
73 <Message>Retrieving package version...</Message>
74 </PreBuildEvent>
6975 </ItemDefinitionGroup>
7076 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
7177 <ClCompile>
7278 <Optimization>Disabled</Optimization>
7379 <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
74 <PreprocessorDefinitions>_DEBUG;WIN32;_LIB;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
80 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_DEBUG;WIN32;_LIB;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
7581 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
7682 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
7783 <PrecompiledHeader />
8389 <Culture>0x0413</Culture>
8490 </ResourceCompile>
8591 <Lib />
92 <PreBuildEvent>
93 <Command>"$(SolutionDir)..\..\utils\win32\ac2ver.exe" "faad2" "$(SolutionDir)..\..\configure.ac" &gt; "$(SolutionDir)..\..\libfaad\win32_ver.h"</Command>
94 </PreBuildEvent>
95 <PreBuildEvent>
96 <Message>Retrieving package version...</Message>
97 </PreBuildEvent>
8698 </ItemDefinitionGroup>
8799 <ItemGroup>
88100 <ClCompile Include="..\..\libfaad\bits.c" />
6262 <ClCompile>
6363 <Optimization>Disabled</Optimization>
6464 <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
65 <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
65 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
6666 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
6767 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
6868 <PrecompiledHeader />
9191 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
9292 <IntrinsicFunctions>true</IntrinsicFunctions>
9393 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
94 <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
94 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_WINDOWS;_USRDLL;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9595 <StringPooling>true</StringPooling>
9696 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
9797 <FunctionLevelLinking>true</FunctionLevelLinking>
0 /*
1 ** AC2VER - extract version number from AC_INIT macro (configure.ac)
2 ** Copyright (C) 2017 LoRd_MuldeR <mulder2@GMX.de>
3 **
4 ** This software is released under the CC0 1.0 Universal [CC0 1.0] licence!
5 ** https://creativecommons.org/publicdomain/zero/1.0/legalcode
6 **/
7
8 #define BUFF_SIZE 4096
9 #define _CRT_SECURE_NO_WARNINGS 1
10
11 #include <stdlib.h>
12 #include <stdio.h>
13 #include <string.h>
14 #include <ctype.h>
15
16 static int clean_string(char *const str)
17 {
18 size_t i = 0, j = 0;
19 while(str[i])
20 {
21 if(isalnum(str[i]) || strchr("._-", str[i]))
22 {
23 if(i != j)
24 {
25 str[j] = str[i];
26 }
27 ++j;
28 }
29 ++i;
30 }
31 str[j] = '\0';
32 return !!j;
33 }
34
35 static int parse_version(FILE *const input, const char *const format, char *const version)
36 {
37 char buffer[BUFF_SIZE];
38
39 while(!(feof(input) || ferror(input)))
40 {
41 const char *line = fgets(buffer, BUFF_SIZE, input);
42 if(line)
43 {
44 while((*line) && (isspace(*line)))
45 {
46 ++line; /*skip space*/
47 }
48 if(sscanf(line, format, version) == 1)
49 {
50 if(clean_string(version))
51 {
52 return 1; /*found!*/
53 }
54 }
55 }
56 }
57
58 version[0] = '\0';
59 return 0;
60 }
61
62 static int get_version(const wchar_t *const lib_name, const wchar_t *const file_name)
63 {
64 char format[128], version[BUFF_SIZE];
65
66 FILE *const input = _wfopen(file_name, L"r");
67 if(!input)
68 {
69 fprintf(stderr, "Error: Failed to open input file!\n%S\n\n", file_name);
70 return 0;
71 }
72
73 _snprintf(format, 128, "AC_INIT ( %S , %%s", lib_name);
74 //printf("<%s>\n", format);
75
76 if(parse_version(input, format, version))
77 {
78 printf("#define PACKAGE_VERSION \"%s\"\n", version);
79 fclose(input);
80 return 1;
81 }
82 else
83 {
84 fprintf(stderr, "Error: Version string could not be found!\n\n");
85 fclose(input);
86 return 0;
87 }
88 }
89
90 int wmain(int argc, wchar_t* argv[])
91 {
92 if((argc != 3) || (!argv[1][0]) || (!argv[2][0]))
93 {
94 wchar_t file_name[_MAX_FNAME], file_ext[_MAX_EXT];
95 _wsplitpath(argv[0], NULL, NULL, file_name, file_ext);
96 fprintf(stderr, "AC2VER [%s]\n\n", __DATE__);
97 fprintf(stderr, "Usage: %S%S <lib_name> <path/to/configure.ac>\n\n", file_name, file_ext);
98 return EXIT_FAILURE;
99 }
100
101 return get_version(argv[1], argv[2]) ? EXIT_SUCCESS : EXIT_FAILURE;
102 }
Binary diff not shown