fixing the windows plugin build

This commit is contained in:
George Hotz 2014-08-21 10:34:52 -07:00
parent 2172814945
commit 6461701529
9 changed files with 25 additions and 94 deletions

5
.gitignore vendored
View File

@ -4,10 +4,7 @@ tests/a.out
tests/*.o
*.pyc
ida/*.o
ida/qira.plx
ida/qira.pmc
ida/qira.plx64
ida/qira.pmc64
ida/qira.*
ida/libwebsockets.a
tests/idb
old/qiradb/qiradb

View File

@ -1,9 +0,0 @@
@echo off
IF "%SDKROOT%"=="" (
ECHO SDKROOT is not defined. Please set it to the root directory of the IDA SDK.
exit /b
)
PUSHD win32
msbuild
POPD

Binary file not shown.

BIN
ida/libs/libZLIB.a Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,17 +1,34 @@
#!/bin/bash -e
# build websockets with
# cmake .. -DCMAKE_TOOLCHAIN_FILE=../cross-ming.cmake -DLWS_WITH_SSL=0
SDKROOT=~/build/idasdk66
OUTPUT="qira.plw"
OUTPUT64="qira.p64"
OPENSSL=~/.wine/drive_c/OpenSSL-Win32
MINGW_PREFIX="i686-w64-mingw32"
i586-mingw32msvc-g++ template.cpp -fPIC -D__IDP__ -D__PLUGIN__ -c -D__NT__ -I . -I$SDKROOT/include
# build 32
$MINGW_PREFIX-g++ template.cpp -fPIC -D__IDP__ -D__PLUGIN__ -c -D__NT__ -I . -I$SDKROOT/include
$MINGW_PREFIX-g++ --shared template.o $SDKROOT/lib/x86_win_gcc_32/ida.a \
-static-libgcc -static-libstdc++ \
libs/libwebsockets_static.a \
libs/libZLIB.a \
-o $OUTPUT -lws2_32
echo "built 32"
i586-mingw32msvc-g++ --shared template.o $SDKROOT/lib/x86_win_gcc_32/ida.a -o $OUTPUT \
-lws2_32 \
$OPENSSL/lib/libeay32.lib \
$OPENSSL/lib/ssleay32.lib \
libs/websockets_static.lib \
libs/ZLIB.lib
# build 64
$MINGW_PREFIX-g++ template.cpp -D__EA64__=1 -fPIC -D__IDP__ -D__PLUGIN__ -c -D__NT__ -I . -I$SDKROOT/include
$MINGW_PREFIX-g++ --shared template.o $SDKROOT/lib/x86_win_gcc_32/ida.a \
-static-libgcc -static-libstdc++ \
libs/libwebsockets_static.a \
libs/libZLIB.a \
-o $OUTPUT64 -lws2_32
echo "built 64"
sha1sum $OUTPUT $OUTPUT64
cp $OUTPUT bin/qira_ida66_windows.plw
cp $OUTPUT64 bin/qira_ida66_windows.p64

View File

@ -1,17 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "win32", "win32.vcxproj", "{42AA3BA2-7FA5-408D-8B9D-56175F75D604}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{42AA3BA2-7FA5-408D-8B9D-56175F75D604}.Release|Win32.ActiveCfg = Release|Win32
{42AA3BA2-7FA5-408D-8B9D-56175F75D604}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,57 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{42AA3BA2-7FA5-408D-8B9D-56175F75D604}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>win32</RootNamespace>
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup>
<LinkIncremental>false</LinkIncremental>
<TargetName>qira</TargetName>
<TargetExt>.plw</TargetExt>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>MinSpace</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>__NT__;__IDP__;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN32_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SDKROOT)\include</AdditionalIncludeDirectories>
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>libcmt.lib;C:\Users\supersat\Documents\Research\external\libwebsockets\build\lib\MinSizeRel\websockets_static.lib;C:\Program Files (x86)\IDA\idasdk63\lib\x86_win_vc_32\ida.lib;C:\Program Files (x86)\IDA\idasdk63\lib\x86_win_vc_32\pro.lib;ws2_32.lib;C:\Program Files (x86)\OpenSSL\lib\VC\static\libeay32MT.lib;C:\Program Files (x86)\OpenSSL\lib\VC\static\ssleay32MT.lib;%(AdditionalDependencies)</AdditionalDependencies>
<IgnoreSpecificDefaultLibraries>msvcrt.lib</IgnoreSpecificDefaultLibraries>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\template.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>