diff options
Diffstat (limited to 'build')
29 files changed, 1872 insertions, 0 deletions
diff --git a/build/Makefile.am b/build/Makefile.am new file mode 100644 index 0000000..a9ce4fb --- /dev/null +++ b/build/Makefile.am @@ -0,0 +1,11 @@ +SUBDIRS = \ + win32 + +EXTRA_DIST = \ + atk_msvc_files.py \ + msvcfiles.py \ + testsrules_msvc.mak \ + introspection-msvc.mak \ + atk-introspection-msvc.mak \ + gen-file-list-atk.py + diff --git a/build/atk-introspection-msvc.mak b/build/atk-introspection-msvc.mak new file mode 100644 index 0000000..8b4c38c --- /dev/null +++ b/build/atk-introspection-msvc.mak @@ -0,0 +1,50 @@ +# NMake Makefile to build Introspection Files for ATK + +!include testsrules_msvc.mak + +APIVERSION = 1.0 + +CHECK_PACKAGE = gobject-2.0 + +!include introspection-msvc.mak + +!if "$(BUILD_INTROSPECTION)" == "TRUE" +all: Atk-$(APIVERSION).gir Atk-$(APIVERSION).typelib + +atk_list: + @-echo Generating Filelist to Introspect for ATK... + $(PYTHON2) gen-file-list-atk.py + +Atk-$(APIVERSION).gir: atk_list + @-echo Generating Atk-$(APIVERSION).gir... + @set CC=$(CC) + @set PYTHONPATH=$(BASEDIR)\lib\gobject-introspection + @set PATH=win32\vs$(VSVER)\$(CFG)\$(PLAT)\bin;$(BASEDIR)\bin;$(PATH);$(MINGWDIR)\bin + @set PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) + @set LIB=win32\vs$(VSVER)\$(CFG)\$(PLAT)\bin;$(BASEDIR)\lib;$(LIB) + $(PYTHON2) $(G_IR_SCANNER) --verbose -I.. --add-include-path=.. \ + --namespace=Atk --nsversion=$(APIVERSION) --include=GObject-2.0 \ + --no-libtool --pkg=glib-2.0 --library=atk-1.0 \ + --reparse-validate --add-include-path=$(G_IR_INCLUDEDIR) \ + --pkg-export atk --warn-all --c-include "atk/atk.h" \ + -DATK_DISABLE_DEPRECATED -DATK_COMPILATION -DATK_LOCALEDIR=\"/dummy/share/locale\" \ + --filelist=atk_list -o Atk-$(APIVERSION).gir + +Atk-$(APIVERSION).typelib: Atk-$(APIVERSION).gir + @-echo Compiling Atk-$(APIVERSION).typelib... + $(G_IR_COMPILER) --includedir=. --debug --verbose Atk-1.0.gir -o Atk-1.0.typelib + +install-introspection: Atk-$(APIVERSION).gir Atk-$(APIVERSION).typelib + @-copy Atk-$(APIVERSION).gir $(G_IR_INCLUDEDIR) + @-copy /b Atk-$(APIVERSION).typelib $(G_IR_TYPELIBDIR) + +!else +all: + @-echo $(ERROR_MSG) +!endif + +clean: + @-del /f/q Atk-$(APIVERSION).typelib + @-del /f/q Atk-$(APIVERSION).gir + @-del /f/q atk_list + @-del /f/q *.pyc diff --git a/build/atk_msvc_files.py b/build/atk_msvc_files.py new file mode 100644 index 0000000..0707ef5 --- /dev/null +++ b/build/atk_msvc_files.py @@ -0,0 +1,68 @@ +#! /usr/bin/python + +# Expand The Visual Studio Files from their templates + +import os +import optparse +import sys + +from msvcfiles import parent_dir +from msvcfiles import check_output_type +from msvcfiles import generate_src_list +from msvcfiles import gen_vs9_project +from msvcfiles import gen_vs10_project +from msvcfiles import generate_nmake_makefiles +from msvcfiles import gen_vs_inst_list + +def main(argv): + parser = optparse.OptionParser() + parser.add_option('-t', '--type', dest='output_type', metavar='string', action='store', help='Visual Studio output build file type to generate ("nmake-exe","vs9","vs10")') + opt, args = parser.parse_args(argv) + + srcroot = parent_dir(__file__) + output_type = check_output_type (opt.output_type) + if (output_type == -1): + sys.exit() + + elif (output_type == 3): + # Generate the executable list from tests/ + test_filters_progs = ['noinst_PROGRAMS'] + test_filters_conds = {} + test_src_dir = os.path.join(srcroot, 'tests') + test_progs = generate_src_list (srcroot, test_src_dir, test_filters_progs, test_filters_conds, False, None) + generate_nmake_makefiles(srcroot, test_src_dir, "test", "testatk_vc.mak", test_progs) + + elif (output_type == 1 or output_type == 2): + # Generate the ATK MSVC 2008 or 2010 project files + atk_filters_src = ['libatk_1_0_la_SOURCES'] + atk_filters_conds = {} + atk_src_dir = os.path.join(srcroot, 'atk') + atk_src_files = generate_src_list (srcroot, atk_src_dir, atk_filters_src, atk_filters_conds, True, None) + if (output_type == 1): + gen_vs9_project ('atk', srcroot, 'atk', atk_src_files) + else: + gen_vs10_project ('atk', srcroot, 'atk', atk_src_files) + + + # Generate the ATK headers list to "install" for MSVC 2008/2010 + atk_filters_h_conds = {} + atk_filters_h = ['libatkinclude_HEADERS'] + atk_h_files_raw = generate_src_list (srcroot, atk_src_dir, atk_filters_h, atk_filters_h_conds, False, None) + atk_h_files = [files.replace('/atk/', '') for files in atk_h_files_raw] + + srcdirs = ['atk'] + + inst_h_lists = [atk_h_files] + + inst_h_dirs = ['include\\atk-$(ApiVersion)\\atk'] + + if (output_type == 1): + gen_vs_inst_list ('atk', srcroot, srcdirs, inst_h_lists, inst_h_dirs, True) + else: + gen_vs_inst_list ('atk', srcroot, srcdirs, inst_h_lists, inst_h_dirs, False) + + else: + raise Exception ("Somehow your output_type is wrong.\nShould not have seen this message!") + +if __name__ == '__main__': + sys.exit(main(sys.argv)) diff --git a/build/gen-file-list-atk.py b/build/gen-file-list-atk.py new file mode 100644 index 0000000..f008022 --- /dev/null +++ b/build/gen-file-list-atk.py @@ -0,0 +1,35 @@ +#!/usr/bin/python +# vim: encoding=utf-8 +# Generate the file lists for processing with g-ir-scanner +import os +import sys +import re +import string +import subprocess +import optparse + +from msvcfiles import read_vars_from_AM + +def gen_atk_filelist(srcroot, subdir, dest): + vars = read_vars_from_AM(os.path.join(srcroot, subdir, 'Makefile.am'), + vars = {'top_builddir':'.'}, + conds = {'HAVE_INTROSPECTION':True}, + filters = ['introspection_sources', 'introspection_generated_sources']) + + files = vars['introspection_sources'].split() + \ + vars['introspection_generated_sources'].split() + + with open(dest, 'w') as d: + for i in files: + if (i.startswith('./atk/')): + i = i.replace('./atk/','') + d.write(srcroot + '\\' + subdir + '\\' + i.replace('/', '\\') + '\n') + +def main(argv): + srcroot = os.path.join('..') + subdir = 'atk' + gen_atk_filelist(srcroot, subdir, 'atk_list') + return 0 + +if __name__ == '__main__': + sys.exit(main(sys.argv)) diff --git a/build/introspection-msvc.mak b/build/introspection-msvc.mak new file mode 100644 index 0000000..beff817 --- /dev/null +++ b/build/introspection-msvc.mak @@ -0,0 +1,79 @@ +# Common Utility NMake Makefile Template +# Used to Generate Introspection files for various Projects + +# Can Override with env vars as needed +# You will need to have built gobject-introspection for this to work. +# Change or pass in or set the following to suit your environment + +BASEDIR = ..\..\vs$(VSVER)\$(PLAT) +GIR_SUBDIR = share\gir-1.0 +GIR_TYPELIBDIR = lib\girepository-1.0 +G_IR_SCANNER = $(BASEDIR)\bin\g-ir-scanner +G_IR_COMPILER = $(BASEDIR)\bin\g-ir-compiler.exe +G_IR_INCLUDEDIR = $(BASEDIR)\$(GIR_SUBDIR) +G_IR_TYPELIBDIR = $(BASEDIR)\$(GIR_TYPELIBDIR) + +# Note: The PYTHON2 must be a Python 2.6.x or 2.7.x Interpretor! +# Either having python.exe from Python 2.6.x/2.7.x in your PATH will work +# or passing in PYTHON2=<full path to your Python 2.6.x/2.7.x interpretor> will do + +# This is required, and gobject-introspection needs to be built +# before this can be successfully run. +PYTHON2=python + +# Don't change anything following this line! +VALID_PKG_CONFIG_PATH = FALSE +VALID_GCC_INSTPATH = FALSE + +MSG_INVALID_PKGCONFIG = You must set or specifiy a valid PKG_CONFIG_PATH +MSG_INVALID_MINGWDIR = You must set or specifiy a valid MINGWDIR, where gcc.exe can be found in %MINGWDIR%\bin +MSG_INVALID_CFG = You need to specify or set CFG to be release or debug to use this Makefile to build the Introspection Files + +ERROR_MSG = + +BUILD_INTROSPECTION = TRUE + +!if ![pkg-config --print-errors --errors-to-stdout $(CHECK_PACKAGE) > pkgconfig.x] \ + && ![setlocal] \ + && ![set file="pkgconfig.x"] \ + && ![FOR %A IN (%file%) DO @echo PKG_CHECK_SIZE=%~zA > pkgconfig.chksize] \ + && ![del $(ERRNUL) /q/f pkgconfig.x] +!endif + +!include pkgconfig.chksize +!if "$(PKG_CHECK_SIZE)" == "0" +VALID_PKG_CONFIG_PATH = TRUE +!else +VALID_PKG_CONFIG_PATH = FALSE +!endif + +!if ![IF EXIST %MINGWDIR%\bin\gcc.exe @echo VALID_GCC_INSTPATH=TRUE > gcccheck.x] +!endif + +!if ![IF NOT EXIST %MINGWDIR%\bin\gcc.exe @echo VALID_GCC_INSTPATH=FALSE > gcccheck.x] +!endif + +!include gcccheck.x + +!if ![del $(ERRNUL) /q/f pkgconfig.chksize gcccheck.x] +!endif + +VALID_CFGSET = FALSE +!if "$(CFG)" == "release" || "$(CFG)" == "debug" +VALID_CFGSET = TRUE +!endif + +!if "$(VALID_GCC_INSTPATH)" != "TRUE" +BUILD_INTROSPECTION = FALSE +ERROR_MSG = $(MSG_INVALID_MINGWDIR) +!endif + +!if "$(VALID_PKG_CONFIG_PATH)" != "TRUE" +BUILD_INTROSPECTION = FALSE +ERROR_MSG = $(MSG_INVALID_PKGCONFIG) +!endif + +!if "$(VALID_CFGSET)" != "TRUE" +BUILD_INTROSPECTION = FALSE +ERROR_MSG = $(MSG_INVALID_CFG) +!endif diff --git a/build/msvcfiles.py b/build/msvcfiles.py new file mode 100644 index 0000000..05957ac --- /dev/null +++ b/build/msvcfiles.py @@ -0,0 +1,254 @@ +#!/usr/bin/python +# vim: encoding=utf-8 +#expand *.in files +import os +import sys +import re +import optparse + +def parent_dir(path): + if not os.path.isabs(path): + path = os.path.abspath(path) + if os.path.isfile(path): + path = os.path.dirname(path) + return os.path.split(path)[0] + +def check_output_type (btype): + print_bad_type = False + output_type = -1 + if (btype is None): + output_type = -1 + print_bad_type = False + elif (btype == "vs9"): + output_type = 1 + elif (btype == "vs10"): + output_type = 2 + elif (btype == "nmake-exe"): + output_type = 3 + else: + output_type = -1 + print_bad_type = True + if (output_type == -1): + if (print_bad_type is True): + print ("The entered output build file type '%s' is not valid" % btype) + else: + print ("Output build file type is not specified.\nUse -t <type> to specify the output build file type.") + print ("Valid output build file types are: nmake-exe, vs9 , vs10") + return output_type + +def read_vars_from_AM(path, vars = {}, conds = {}, filters = None): + ''' + path: path to the Makefile.am + vars: predefined variables + conds: condition variables for Makefile + filters: if None, all variables defined are returned, + otherwise, it is a list contains that variables should be returned + ''' + cur_vars = vars.copy() + RE_AM_VAR_REF = re.compile(r'\$\((\w+?)\)') + RE_AM_VAR = re.compile(r'^\s*(\w+)\s*=(.*)$') + RE_AM_INCLUDE = re.compile(r'^\s*include\s+(\w+)') + RE_AM_VAR_ADD = re.compile(r'^\s*(\w+)\s*\+=(.*)$') + RE_AM_CONTINUING = re.compile(r'\\\s*$') + RE_AM_IF = re.compile(r'^\s*if\s+(\w+)') + RE_AM_ELSE = re.compile(r'^\s*else') + RE_AM_ENDIF = re.compile(r'^\s*endif') + def am_eval(cont): + return RE_AM_VAR_REF.sub(lambda x: cur_vars.get(x.group(1), ''), cont) + with open(path, 'r') as f: + contents = f.readlines() + #combine continuing lines + i = 0 + ncont = [] + while i < len(contents): + line = contents[i] + if RE_AM_CONTINUING.search(line): + line = RE_AM_CONTINUING.sub('', line) + j = i + 1 + while j < len(contents) and RE_AM_CONTINUING.search(contents[j]): + line += RE_AM_CONTINUING.sub('', contents[j]) + j += 1 + else: + if j < len(contents): + line += contents[j] + i = j + else: + i += 1 + ncont.append(line) + + #include, var define, var evaluation + i = -1 + skip = False + oldskip = [] + while i < len(ncont) - 1: + i += 1 + line = ncont[i] + mo = RE_AM_IF.search(line) + if mo: + oldskip.append(skip) + skip = False if mo.group(1) in conds and conds[mo.group(1)] \ + else True + continue + mo = RE_AM_ELSE.search(line) + if mo: + skip = not skip + continue + mo = RE_AM_ENDIF.search(line) + if mo: + if oldskip: + skip = oldskip.pop() + continue + if not skip: + mo = RE_AM_INCLUDE.search(line) + if mo: + cur_vars.update(read_vars_from_AM(am_eval(mo.group(1)), cur_vars, conds, None)) + continue + mo = RE_AM_VAR.search(line) + if mo: + cur_vars[mo.group(1)] = am_eval(mo.group(2).strip()) + continue + mo = RE_AM_VAR_ADD.search(line) + if mo: + try: + cur_vars[mo.group(1)] += ' ' + except KeyError: + cur_vars[mo.group(1)] = '' + cur_vars[mo.group(1)] += am_eval(mo.group(2).strip()) + continue + + #filter: + if filters != None: + ret = {} + for i in filters: + ret[i] = cur_vars.get(i, '') + return ret + else: + return cur_vars + +def process_include(src, dest, includes): + RE_INCLUDE = re.compile(r'^\s*#include\s+"(.*)"') + with open(src, 'r') as s: + with open(dest, 'w') as d: + for i in s: + mo = RE_INCLUDE.search(i) + if mo: + target = '' + for j in includes: + #print "searching in ", j + if mo.group(1) in os.listdir(j): + target = os.path.join(j, mo.group(1)) + break + if not target: + raise Exception("Couldn't find include file %s" % mo.group(1)) + else: + with open(target, 'r') as t: + for inc in t.readlines(): + d.write(inc) + else: + d.write(i) + +#Generate the source files listing that is used +def generate_src_list (srcroot, srcdir, filters_src, filter_conds, filter_c, mk_am_file): + mkfile = '' + if mk_am_file is None or mk_am_file == '': + mkfile = 'Makefile.am' + else: + mkfile = mk_am_file + vars = read_vars_from_AM(os.path.join(srcdir, mkfile), + vars = {'top_srcdir': srcroot}, + conds = filter_conds, + filters = filters_src) + files = [] + for src_filters_item in filters_src: + files += vars[src_filters_item].split() + if filter_c is True: + sources = [i for i in files if i.endswith('.c') ] + return sources + else: + return files + +# Generate the Visual Studio 2008 Project Files from the templates +def gen_vs9_project (projname, srcroot, srcdir_name, sources_list): + vs_file_list_dir = os.path.join (srcroot, 'build', 'win32') + + with open (os.path.join (vs_file_list_dir, + projname + '.sourcefiles'), 'w') as vs9srclist: + for i in sources_list: + vs9srclist.write ('\t\t\t<File RelativePath="..\\..\\..\\' + srcdir_name + '\\' + i.replace('/', '\\') + '" />\n') + + process_include (os.path.join(srcroot, 'build', 'win32', 'vs9', projname + '.vcprojin'), + os.path.join(srcroot, 'build', 'win32', 'vs9', projname + '.vcproj'), + includes = [vs_file_list_dir]) + + os.unlink(os.path.join(srcroot, 'build', 'win32', projname + '.sourcefiles')) + +# Generate the Visual Studio 2010 Project Files from the templates +def gen_vs10_project (projname, srcroot, srcdir_name, sources_list): + vs_file_list_dir = os.path.join (srcroot, 'build', 'win32') + + with open (os.path.join (vs_file_list_dir, + projname + '.vs10.sourcefiles'), 'w') as vs10srclist: + for j in sources_list: + vs10srclist.write (' <ClCompile Include="..\\..\\..\\' + srcdir_name + '\\' + j.replace('/', '\\') + '" />\n') + + with open (os.path.join (vs_file_list_dir, + projname + '.vs10.sourcefiles.filters'), 'w') as vs10srclist_filter: + for k in sources_list: + vs10srclist_filter.write (' <ClCompile Include="..\\..\\..\\' + srcdir_name + '\\' + k.replace('/', '\\') + '"><Filter>Source Files</Filter></ClCompile>\n') + + process_include (os.path.join(srcroot, 'build', 'win32', 'vs10', projname + '.vcxprojin'), + os.path.join(srcroot, 'build', 'win32', 'vs10', projname + '.vcxproj'), + includes = [vs_file_list_dir]) + process_include (os.path.join(srcroot, 'build', 'win32', 'vs10', projname + '.vcxproj.filtersin'), + os.path.join(srcroot, 'build', 'win32', 'vs10', projname + '.vcxproj.filters'), + includes = [vs_file_list_dir]) + + os.unlink(os.path.join(srcroot, 'build', 'win32', projname + '.vs10.sourcefiles')) + os.unlink(os.path.join(srcroot, 'build', 'win32', projname + '.vs10.sourcefiles.filters')) + +def gen_vs_inst_list (projname, srcroot, srcdirs, inst_lists, destdir_names, isVS9): + vs_file_list_dir = os.path.join (srcroot, 'build', 'win32') + vsver = '' + vsprops_line_ending = '' + vsprops_file_ext = '' + if isVS9 is True: + vsver = '9' + vsprops_line_ending = '
\n' + vsprops_file_ext = '.vsprops' + else: + vsver = '10' + vsprops_line_ending = '\n\n' + vsprops_file_ext = '.props' + + with open (os.path.join (vs_file_list_dir, + projname + '.vs' + vsver + 'instfiles'), 'w') as vsinstlist: + + for file_list, srcdir, dir_name in zip (inst_lists, srcdirs, destdir_names): + for i in file_list: + vsinstlist.write ('copy ..\\..\\..\\' + + srcdir + '\\' + + i.replace ('/', '\\') + + ' $(CopyDir)\\' + + dir_name + + vsprops_line_ending) + process_include (os.path.join(srcroot, 'build', 'win32', 'vs' + vsver, projname + '-install' + vsprops_file_ext + 'in'), + os.path.join(srcroot, 'build', 'win32', 'vs' + vsver, projname + '-install' + vsprops_file_ext), + includes = [vs_file_list_dir]) + + os.unlink(os.path.join (vs_file_list_dir, projname + '.vs' + vsver + 'instfiles')) + +def generate_nmake_makefiles(srcroot, srcdir, base_name, makefile_name, progs_list): + file_list_dir = os.path.join (srcroot, 'build', 'win32') + + with open (os.path.join (file_list_dir, + base_name + '_progs'), 'w') as proglist: + for i in progs_list: + proglist.write ('\t' + i + '$(EXEEXT)\t\\\n') + + + process_include (os.path.join(srcdir, makefile_name + 'in'), + os.path.join(srcdir, makefile_name), + includes = [file_list_dir]) + + os.unlink(os.path.join (file_list_dir, base_name + '_progs')) + diff --git a/build/testsrules_msvc.mak b/build/testsrules_msvc.mak new file mode 100644 index 0000000..06c908e --- /dev/null +++ b/build/testsrules_msvc.mak @@ -0,0 +1,72 @@ +# Check to see we are configured to build with MSVC (MSDEVDIR, MSVCDIR or +# VCINSTALLDIR) or with the MS Platform SDK (MSSDK or WindowsSDKDir) +!if !defined(VCINSTALLDIR) && !defined(WINDOWSSDKDIR) +MSG = ^ +This Makefile is only for Visual Studio 2008 and later.^ +You need to ensure that the Visual Studio Environment is properly set up^ +before running this Makefile. +!error $(MSG) +!endif + +ERRNUL = 2>NUL +_HASH=^# + +!if ![echo VCVERSION=_MSC_VER > vercl.x] \ + && ![echo $(_HASH)if defined(_M_IX86) >> vercl.x] \ + && ![echo PLAT=Win32 >> vercl.x] \ + && ![echo $(_HASH)elif defined(_M_AMD64) >> vercl.x] \ + && ![echo PLAT=x64 >> vercl.x] \ + && ![echo $(_HASH)endif >> vercl.x] \ + && ![cl -nologo -TC -P vercl.x $(ERRNUL)] +!include vercl.i +!if ![echo VCVER= ^\> vercl.vc] \ + && ![set /a $(VCVERSION) / 100 - 6 >> vercl.vc] +!include vercl.vc +!endif +!endif +!if ![del $(ERRNUL) /q/f vercl.x vercl.i vercl.vc] +!endif + +!if $(VCVERSION) > 1499 && $(VCVERSION) < 1600 +VSVER = 9 +!elseif $(VCVERSION) > 1599 && $(VCVERSION) < 1700 +VSVER = 10 +!elseif $(VCVERSION) > 1699 && $(VCVERSION) < 1800 +VSVER = 11 +!elseif $(VCVERSION) > 1799 && $(VCVERSION) < 1900 +VSVER = 12 +!else +VSVER = 0 +!endif + +!if "$(VSVER)" == "0" +MSG = ^ +This NMake Makefile set supports Visual Studio^ +9 (2008) through 12 (2013). Your Visual Studio^ +version is not supported. +!error $(MSG) +!endif + +VALID_CFGSET = FALSE +!if "$(CFG)" == "release" || "$(CFG)" == "debug" +VALID_CFGSET = TRUE +!endif + +!if "$(CFG)" == "release" +CFLAGS_ADD = /MD /O2 +!else +CFLAGS_ADD = /MDd /Od /Zi +!endif + +!if "$(PLAT)" == "x64" +LDFLAGS_ARCH = /machine:x64 +!else +LDFLAGS_ARCH = /machine:x86 +!endif + +LD = link.exe +LD_CFLAGS = /link +EXEEXT = .exe +GLIB_LIBS = gobject-2.0.lib gmodule-2.0.lib glib-2.0.lib + +ATK_API_VERSION = 1.0 diff --git a/build/win32/Makefile.am b/build/win32/Makefile.am new file mode 100644 index 0000000..e013d16 --- /dev/null +++ b/build/win32/Makefile.am @@ -0,0 +1,3 @@ +SUBDIRS = \ + vs9 \ + vs10 diff --git a/build/win32/vs10/.gitignore b/build/win32/vs10/.gitignore new file mode 100644 index 0000000..0231580 --- /dev/null +++ b/build/win32/vs10/.gitignore @@ -0,0 +1,3 @@ +atk.vcxproj +atk.vcxproj.filters +atk-install.props diff --git a/build/win32/vs10/Makefile.am b/build/win32/vs10/Makefile.am new file mode 100644 index 0000000..71329c6 --- /dev/null +++ b/build/win32/vs10/Makefile.am @@ -0,0 +1,20 @@ +EXTRA_DIST = \ + README.txt \ + atk.sln \ + atk.vcxproj \ + atk.vcxprojin \ + atk.vcxproj.filters \ + atk.vcxproj.filtersin \ + install.vcxproj \ + atk-build-defines.props \ + atk-gen-src.props \ + atk-install.props \ + atk-install.propsin \ + atk-version-paths.props + +atk-install.props atk.vcxproj.filter: atk.vcxproj + +atk.vcxproj: + $(PYTHON) $(top_srcdir)/build/atk_msvc_files.py -t vs10 + +DISTCLEANFILES = atk.vcxproj atk.vcxproj.filters atk-install.props diff --git a/build/win32/vs10/README.txt b/build/win32/vs10/README.txt new file mode 100644 index 0000000..df81da3 --- /dev/null +++ b/build/win32/vs10/README.txt @@ -0,0 +1,89 @@ +Please do not build this package in a path that contains spaces to avoid
+possible problems during the build or during the usage of the library.
+
+Please refer to the following GNOME Live! page for more detailed
+instructions on building ATK and its dependencies with Visual C++:
+
+https://live.gnome.org/GTK%2B/Win32/MSVCCompilationOfGTKStack
+
+This VS10 solution and the projects it includes are intented to be used
+in a ATK source tree unpacked from a tarball. In a git checkout you
+first need to use some Unix-like environment or manual work to expand
+the .in files needed, mainly config.h.win32.in into config.h.win32.
+You will also need to expand atk.vcxprojin and atk.vcxproj.filtersin here
+into atk.vcxproj and atk.vcxproj.filters respectively.
+
+The dependencies for this package are gettext-runtime (libintl), GLib*
+and ZLib.
+
+a) look for all of the dependencies (except GLib*) under
+
+ http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ (32-bit) -OR-
+ http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ (64-bit)
+
+ Please use the latest versions of these libraries that are available there,
+ these are packaged by Tor Lillqvist, which are built with MinGW/GCC.
+ Please see b) below regarding the build of GLib*
+
+-OR-
+
+b) Build them yourself with VS10 (but you may most probably wish to get
+ gettext-runtime from the URL(s) mentioned in a)). Use the latest
+ stable versions for them (you may need to get the latest unstable version of
+ GLib if you are using an unstable version of ATK):
+
+ GLib*: Grab the latest sources from http://www.gtk.org under "Download"
+ (stable only-please make a search for the latest unstable versions)
+ ZLib: http://www.zlib.net
+
+ The above 2 packages all have supported mechanisms (Makefiles and/or Project
+ Files) for building under VS10 (upgrade the Project Files from earlier VS
+ versions will do for these, when applicable)
+
+* This GLib refers to a build that is built by VS10
+
+Set up the source tree as follows under some arbitrary top
+folder <root>:
+
+<root>\atk\<this-atk-source-tree>
+<root>\vs10\<PlatformName>
+
+*this* file you are now reading is thus located at
+<root>\atk\<this-atk-source-tree>\build\win32\vs10\README.
+
+<PlatformName> is either Win32 or x64, as in VS10 project files.
+
+You should unpack the <dependent-package>-dev and <dependent-packge> (runtime)
+into <root>\vs10\<PlatformName>, if you download any of the packages from
+
+http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ (32-bit) -OR-
+http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ (64-bit)
+
+so that for instance libintl.h end up at
+<root>\vs10\<PlatformName>\include\libintl.h.
+
+If you build any of the dependencies yourselves, copy the:
+-DLLs and EXEs into <root>\vs10\<PlatformName>\bin
+-headers into <root>\vs10\<PlatformName>\include\
+-LIBs into <root>\vs10\<PlatformName>\lib
+
+If you have not built GLib with VS10 and placed the LIBs and headers in a
+place where VS10 can find them automatically, you should also uncompress
+your GLib sources in <root>\ and build it from there, following the
+instructions in <root>\glib<-version>\build\win32\vs10, so that the required
+headers, EXEs, DLLs and LIBs will end up in
+<root>\vs10\<PlatformName>\include\glib-2.0 (headers)
+<root>\vs10\<PlatformName>\lib (LIBs, also glib-2.0/include/glibocnfig.h)
+<root>\vs10\<PlatformName>\bin (EXEs/DLLs)
+respectively.
+
+After the build of ATK, the "install" project will copy build results
+and headers into their appropriate location under <root>\vs10\<PlatformName>.
+For instance, built DLLs go into <root>\vs10\<PlatformName>\bin, built LIBs into
+<root>\vs10\<PlatformName>\lib and atk headers into
+<root>\vs10\<PlatformName>\include\atk-1.0. This is then from where
+project files higher in the stack are supposed to look for them, not
+from a specific ATK source tree.
+
+--Chun-wei Fan <fanc999@yahoo.com.tw>
+--(adapted from the GLib VS9 README.txt file originally written by Tor Lillqvist)
diff --git a/build/win32/vs10/atk-build-defines.props b/build/win32/vs10/atk-build-defines.props new file mode 100644 index 0000000..a0bec90 --- /dev/null +++ b/build/win32/vs10/atk-build-defines.props @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ImportGroup Label="PropertySheets"> + <Import Project="atk-version-paths.props" /> + </ImportGroup> + <PropertyGroup Label="UserMacros"> + <AtkDefines>ATK_COMPILATION;DLL_EXPORT;ATK_LOCALEDIR="/dummy/share/locale"</AtkDefines> + </PropertyGroup> + <PropertyGroup> + <_PropertySheetDisplayName>atkbuilddefinesprops</_PropertySheetDisplayName> + <OutDir>$(SolutionDir)$(Configuration)\$(PlatformName)\bin\</OutDir> + <IntDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</IntDir> + </PropertyGroup> + <ItemDefinitionGroup> + <ClCompile> + <AdditionalIncludeDirectories>..\..\..;..\..\..\atk;$(GLibEtcInstallRoot)\include;$(GLibEtcInstallRoot)\include\glib-2.0;$(GLibEtcInstallRoot)\lib\glib-2.0\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <PreprocessorDefinitions>HAVE_CONFIG_H;G_DISABLE_SINGLE_INCLUDES;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ForcedIncludeFiles>msvc_recommended_pragmas.h;%(ForcedIncludeFiles)</ForcedIncludeFiles> + </ClCompile> + <Link> + <AdditionalDependencies>glib-2.0.lib;gobject-2.0.lib;gmodule-2.0.lib;intl.lib;%(AdditionalDependencies)</AdditionalDependencies> + <AdditionalLibraryDirectories>$(GLibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <BuildMacro Include="AtkDefines"> + <Value>$(AtkDefines)</Value> + </BuildMacro> + </ItemGroup> +</Project> diff --git a/build/win32/vs10/atk-gen-src.props b/build/win32/vs10/atk-gen-src.props new file mode 100644 index 0000000..60783a8 --- /dev/null +++ b/build/win32/vs10/atk-gen-src.props @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ImportGroup Label="PropertySheets"> + <Import Project="atk-build-defines.props" /> + </ImportGroup> + <PropertyGroup Label="UserMacros"> + <GenConfigH> +if exist ..\..\..\config.h goto DONE_CONFIG_H + +copy ..\..\..\config.h.win32 ..\..\..\config.h + +:DONE_CONFIG_H + </GenConfigH> + <GenMarshalSrc> +cd ..\..\..\atk + +$(GLibEtcInstallRoot)\bin\glib-genmarshal --prefix=atk_marshal atkmarshal.list --header > atkmarshal.h + +$(GLibEtcInstallRoot)\bin\glib-genmarshal --prefix=atk_marshal atkmarshal.list --body > atkmarshal.c + +cd $(SolutionDir) + </GenMarshalSrc> + <GenerateAtkDef> +echo EXPORTS > $(DefDir)\atk.def + +cl /EP ..\..\..\atk\atk.symbols >> $(DefDir)\atk.def + </GenerateAtkDef> + </PropertyGroup> + <PropertyGroup> + <_PropertySheetDisplayName>atkgensrcprops</_PropertySheetDisplayName> + </PropertyGroup> + <ItemGroup> + <BuildMacro Include="GenConfigH"> + <Value>$(GenConfigH)</Value> + </BuildMacro> + <BuildMacro Include="GenMarshalSrc"> + <Value>$(GenMarshalSrc)</Value> + </BuildMacro> + <BuildMacro Include="GenerateAtkDef"> + <Value>$(GenerateAtkDef)</Value> + </BuildMacro> + </ItemGroup> +</Project> diff --git a/build/win32/vs10/atk-install.propsin b/build/win32/vs10/atk-install.propsin new file mode 100644 index 0000000..f952345 --- /dev/null +++ b/build/win32/vs10/atk-install.propsin @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ImportGroup Label="PropertySheets"> + <Import Project="atk-build-defines.props" /> + </ImportGroup> + <PropertyGroup Label="UserMacros"> + <AtkDoInstall> +mkdir $(CopyDir)\bin + +copy $(SolutionDir)$(Configuration)\$(Platform)\bin\*.dll $(CopyDir)\bin + + +mkdir $(CopyDir)\lib + +copy $(SolutionDir)$(Configuration)\$(Platform)\bin\*-$(ApiVersion).lib $(CopyDir)\lib + + +mkdir $(CopyDir)\include\atk-$(ApiVersion)\atk + +#include "atk.vs10instfiles" + </AtkDoInstall> + </PropertyGroup> + <ItemGroup> + <BuildMacro Include="AtkDoInstall"> + <Value>$(AtkDoInstall)</Value> + </BuildMacro> + </ItemGroup> +</Project> diff --git a/build/win32/vs10/atk-version-paths.props b/build/win32/vs10/atk-version-paths.props new file mode 100644 index 0000000..4298972 --- /dev/null +++ b/build/win32/vs10/atk-version-paths.props @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup Label="UserMacros"> + <ApiVersion>1.0</ApiVersion> + <VSVer>10</VSVer> + <GlibEtcInstallRoot>$(SolutionDir)\..\..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot> + <CopyDir>$(GLibEtcInstallRoot)</CopyDir> + <DefDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</DefDir> + <AtkLibtoolCompatibleDllPrefix>lib</AtkLibtoolCompatibleDllPrefix> + <AtkLibtoolCompatibleDllSuffix>-$(ApiVersion)-0</AtkLibtoolCompatibleDllSuffix> + <AtkSeparateVSDllPrefix /> + <AtkSeparateVSDllSuffix>-1-vs$(VSVer)</AtkSeparateVSDllSuffix> + <AtkDllPrefix>$(AtkSeparateVSDllPrefix)</AtkDllPrefix> + <AtkDllSuffix>$(AtkSeparateVSDllSuffix)</AtkDllSuffix> + </PropertyGroup> + <PropertyGroup> + <_PropertySheetDisplayName>atkversionpathsprops</_PropertySheetDisplayName> + </PropertyGroup> + <ItemGroup> + <BuildMacro Include="ApiVersion"> + <Value>$(ApiVersion)</Value> + </BuildMacro> + <BuildMacro Include="GLibEtcInstallRoot"> + <Value>$(GLibEtcInstallRoot)</Value> + </BuildMacro> + <BuildMacro Include="CopyDir"> + <Value>$(CopyDir)</Value> + </BuildMacro> + <BuildMacro Include="DefDir"> + <Value>$(DefDir)</Value> + </BuildMacro> + <BuildMacro Include="AtkLibtoolCompatibleDllPrefix"> + <Value>$(AtkLibtoolCompatibleDllPrefix)</Value> + </BuildMacro> + <BuildMacro Include="AtkLibtoolCompatibleDllSuffix"> + <Value>$(AtkLibtoolCompatibleDllSuffix)</Value> + </BuildMacro> + <BuildMacro Include="AtkSeparateVSDllPrefix"> + <Value>$(AtkSeparateVSDllPrefix)</Value> + </BuildMacro> + <BuildMacro Include="AtkSeparateVSDllSuffix"> + <Value>$(AtkSeparateVSDllSuffix)</Value> + </BuildMacro> + <BuildMacro Include="AtkDllPrefix"> + <Value>$(AtkDllPrefix)</Value> + </BuildMacro> + <BuildMacro Include="AtkDllSuffix"> + <Value>$(AtkDllSuffix)</Value> + </BuildMacro> + </ItemGroup> +</Project> diff --git a/build/win32/vs10/atk.sln b/build/win32/vs10/atk.sln new file mode 100644 index 0000000..55d5531 --- /dev/null +++ b/build/win32/vs10/atk.sln @@ -0,0 +1,36 @@ +
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "atk", "atk.vcxproj", "{86EACD59-F69F-4AAD-854B-AA03D5447360}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "install", "install.vcxproj", "{00702787-1566-484D-991F-3E7E459BB909}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
+ Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Debug|Win32.ActiveCfg = Debug|Win32
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Debug|Win32.Build.0 = Debug|Win32
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Debug|x64.ActiveCfg = Debug|x64
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Debug|x64.Build.0 = Debug|x64
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Release|Win32.ActiveCfg = Release|Win32
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Release|Win32.Build.0 = Release|Win32
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Release|x64.ActiveCfg = Release|x64
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Release|x64.Build.0 = Release|x64
+ {00702787-1566-484D-991F-3E7E459BB909}.Debug|Win32.ActiveCfg = Debug|Win32
+ {00702787-1566-484D-991F-3E7E459BB909}.Debug|Win32.Build.0 = Debug|Win32
+ {00702787-1566-484D-991F-3E7E459BB909}.Debug|x64.ActiveCfg = Debug|x64
+ {00702787-1566-484D-991F-3E7E459BB909}.Debug|x64.Build.0 = Debug|x64
+ {00702787-1566-484D-991F-3E7E459BB909}.Release|Win32.ActiveCfg = Release|Win32
+ {00702787-1566-484D-991F-3E7E459BB909}.Release|Win32.Build.0 = Release|Win32
+ {00702787-1566-484D-991F-3E7E459BB909}.Release|x64.ActiveCfg = Release|x64
+ {00702787-1566-484D-991F-3E7E459BB909}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/build/win32/vs10/atk.vcxproj.filtersin b/build/win32/vs10/atk.vcxproj.filtersin new file mode 100644 index 0000000..d83ee42 --- /dev/null +++ b/build/win32/vs10/atk.vcxproj.filtersin @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Sources"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + <Filter Include="Headers"> + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> + <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> + </Filter> + <Filter Include="Resource Files"> + <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> + <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> +#include "atk.vs10.sourcefiles.filters" + </ItemGroup> + <ItemGroup> + <CustomBuild Include="..\..\..\config.h.win32"><Filter>Resource Files</Filter></CustomBuild> + <CustomBuild Include="..\..\..\atk\atkmarshal.list"><Filter>Resource Files</Filter></CustomBuild> + <CustomBuild Include="..\..\..\atk\atk.symbols"><Filter>Resource Files</Filter></CustomBuild> + </ItemGroup> + <ItemGroup> + <ResourceCompile Include="..\..\..\atk\atk.rc"> + <Filter>Resource Files</Filter> + </ResourceCompile> + </ItemGroup> +</Project> diff --git a/build/win32/vs10/atk.vcxprojin b/build/win32/vs10/atk.vcxprojin new file mode 100644 index 0000000..66eb5fc --- /dev/null +++ b/build/win32/vs10/atk.vcxprojin @@ -0,0 +1,216 @@ +<?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="Debug|Win32"> + <Configuration>Debug</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Debug|x64"> + <Configuration>Debug</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|Win32"> + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|x64"> + <Configuration>Release</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectGuid>{86EACD59-F69F-4AAD-854B-AA03D5447360}</ProjectGuid> + <RootNamespace>atk</RootNamespace> + <Keyword>Win32Proj</Keyword> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>true</WholeProgramOptimization> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="atk-gen-src.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="atk-gen-src.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="atk-gen-src.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="atk-gen-src.props" /> + </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</LinkIncremental> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>_DEBUG;$(AtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions> + <MinimalRebuild>true</MinimalRebuild> + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>EditAndContinue</DebugInformationFormat> + </ClCompile> + <Link> + <OutputFile>$(OutDir)$(AtkDllPrefix)$(ProjectName)$(AtkDllSuffix).dll</OutputFile> + <IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries> + <ModuleDefinitionFile>$(IntDir)\atk.def</ModuleDefinitionFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <ImportLibrary>$(OutDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary> + <TargetMachine>MachineX86</TargetMachine> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <ClCompile> + <Optimization>MaxSpeed</Optimization> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>$(AtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + <FunctionLevelLinking>true</FunctionLevelLinking> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + </ClCompile> + <Link> + <OutputFile>$(OutDir)$(AtkDllPrefix)$(ProjectName)$(AtkDllSuffix).dll</OutputFile> + <IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries> + <ModuleDefinitionFile>$(IntDir)\atk.def</ModuleDefinitionFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <OptimizeReferences>true</OptimizeReferences> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <ImportLibrary>$(OutDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary> + <TargetMachine>MachineX86</TargetMachine> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <ClCompile> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>_DEBUG;$(AtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions> + <MinimalRebuild>true</MinimalRebuild> + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + </ClCompile> + <Link> + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> + <OutputFile>$(OutDir)$(AtkDllPrefix)$(ProjectName)$(AtkDllSuffix).dll</OutputFile> + <ModuleDefinitionFile>$(IntDir)\atk.def</ModuleDefinitionFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary> + <TargetMachine>MachineX64</TargetMachine> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <ClCompile> + <PreprocessorDefinitions>$(AtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + </ClCompile> + <Link> + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> + <OutputFile>$(OutDir)$(AtkDllPrefix)$(ProjectName)$(AtkDllSuffix).dll</OutputFile> + <ModuleDefinitionFile>$(IntDir)\atk.def</ModuleDefinitionFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <OptimizeReferences>true</OptimizeReferences> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary> + <TargetMachine>MachineX64</TargetMachine> + </Link> + </ItemDefinitionGroup> + <ItemGroup> +#include "atk.vs10.sourcefiles" + </ItemGroup> + <ItemGroup> + <CustomBuild Include="..\..\..\config.h.win32"> + <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying config.h from config.h.win32...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GenConfigH)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\..\config.h;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying config.h from config.h.win32...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GenConfigH)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\..\config.h;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying config.h from config.h.win32...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GenConfigH)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\..\config.h;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying config.h from config.h.win32...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GenConfigH)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\config.h;%(Outputs)</Outputs> + </CustomBuild> + <CustomBuild Include="..\..\..\atk\atkmarshal.list"> + <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating Marshalling Sources...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GenMarshalSrc)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\..\atk\atkmarshal.h;..\..\..\atk\atkmarshal.c;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generating Marshalling Sources...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GenMarshalSrc)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\..\atk\atkmarshal.h;..\..\..\atk\atkmarshal.c;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Generating Marshalling Sources...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GenMarshalSrc)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\..\atk\atkmarshal.h;..\..\..\atk\atkmarshal.c;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generating Marshalling Sources...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GenMarshalSrc)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\atk\atkmarshal.h;..\..\..\atk\atkmarshal.c;%(Outputs)</Outputs> + </CustomBuild> + <CustomBuild Include="..\..\..\atk\atk.symbols"> + <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating atk.def...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GenerateAtkDef)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)atk.def;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generating atk.def...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GenerateAtkDef)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)atk.def;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Generating atk.def...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GenerateAtkDef)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)atk.def;%(Outputs)</Outputs> + <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generating atk.def...</Message> + <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GenerateAtkDef)</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)atk.def;%(Outputs)</Outputs> + </CustomBuild> + </ItemGroup> + <ItemGroup> + <ResourceCompile Include="..\..\..\atk\atk.rc" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project> diff --git a/build/win32/vs10/install.vcxproj b/build/win32/vs10/install.vcxproj new file mode 100644 index 0000000..f2b4c39 --- /dev/null +++ b/build/win32/vs10/install.vcxproj @@ -0,0 +1,111 @@ +<?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="Debug|Win32"> + <Configuration>Debug</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Debug|x64"> + <Configuration>Debug</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|Win32"> + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|x64"> + <Configuration>Release</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectGuid>{00702787-1566-484D-991F-3E7E459BB909}</ProjectGuid> + <RootNamespace>install</RootNamespace> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> + <ConfigurationType>Utility</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>true</WholeProgramOptimization> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> + <ConfigurationType>Utility</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>true</WholeProgramOptimization> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> + <ConfigurationType>Utility</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> + <ConfigurationType>Utility</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="atk-install.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="atk-install.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="atk-install.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="atk-install.props" /> + </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(AtkEtcInstallRoot)\</OutDir> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(AtkEtcInstallRoot)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Configuration)\</IntDir> + <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(AtkEtcInstallRoot)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(AtkEtcInstallRoot)\</OutDir> + <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <PostBuildEvent> + <Command>$(AtkDoInstall)</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <PostBuildEvent> + <Command>$(AtkDoInstall)</Command> + </PostBuildEvent> + <PreBuildEvent> + <Command>$(AtkDoInstall)</Command> + </PreBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <PostBuildEvent> + <Command>$(AtkDoInstall)</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <PreBuildEvent> + <Command>$(AtkDoInstall)</Command> + </PreBuildEvent> + </ItemDefinitionGroup> + <ItemGroup> + <ProjectReference Include="atk.vcxproj"> + <Project>{86eacd59-f69f-4aad-854b-aa03d5447360}</Project> + <ReferenceOutputAssembly>false</ReferenceOutputAssembly> + </ProjectReference> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project> diff --git a/build/win32/vs9/.gitignore b/build/win32/vs9/.gitignore new file mode 100644 index 0000000..0e18109 --- /dev/null +++ b/build/win32/vs9/.gitignore @@ -0,0 +1,2 @@ +atk.vcproj +atk-install.vsprops diff --git a/build/win32/vs9/Makefile.am b/build/win32/vs9/Makefile.am new file mode 100644 index 0000000..02185a3 --- /dev/null +++ b/build/win32/vs9/Makefile.am @@ -0,0 +1,18 @@ +EXTRA_DIST = \ + README.txt \ + atk.sln \ + atk.vcproj \ + atk.vcprojin \ + install.vcproj \ + atk-build-defines.vsprops \ + atk-gen-src.vsprops \ + atk-install.vsprops \ + atk-install.vspropsin \ + atk-version-paths.vsprops + +atk-install.vsprops: atk.vcproj + +atk.vcproj: + $(PYTHON) $(top_srcdir)/build/atk_msvc_files.py -t vs9 + +DISTCLEANFILES = atk.vcproj atk-install.vsprops diff --git a/build/win32/vs9/README.txt b/build/win32/vs9/README.txt new file mode 100644 index 0000000..4b5dd54 --- /dev/null +++ b/build/win32/vs9/README.txt @@ -0,0 +1,89 @@ +Please do not build this package in a path that contains spaces to avoid
+possible problems during the build or during the usage of the library.
+
+Please refer to the following GNOME Live! page for more detailed
+instructions on building ATK and its dependencies with Visual C++:
+
+https://live.gnome.org/GTK%2B/Win32/MSVCCompilationOfGTKStack
+
+This VS9 solution and the projects it includes are intented to be used
+in a ATK source tree unpacked from a tarball. In a git checkout you
+first need to use some Unix-like environment or manual work to expand
+the .in files needed, mainly config.h.win32.in into config.h.win32.
+You will also need to expand atk.vcprojin here into
+atk.vcproj.
+
+The dependencies for this package are gettext-runtime (libintl), GLib*
+and ZLib.
+
+a) look for all of the dependencies (except GLib*) under
+
+ http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ (32-bit) -OR-
+ http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ (64-bit)
+
+ Please use the latest versions of these libraries that are available there,
+ these are packaged by Tor Lillqvist, which are built with MinGW/GCC.
+ Please see b) below regarding the build of GLib*
+
+-OR-
+
+b) Build them yourself with VS9 (but you may most probably wish to get
+ gettext-runtime from the URL(s) mentioned in a)). Use the latest
+ stable versions for them (you may need to get the latest unstable version of
+ GLib if you are using an unstable version of ATK):
+
+ GLib*: Grab the latest sources from http://www.gtk.org under "Download"
+ (stable only-please make a search for the latest unstable versions)
+ ZLib: http://www.zlib.net
+
+ The above 2 packages all have supported mechanisms (Makefiles and/or Project
+ Files) for building under VS9 (upgrade the Project Files from earlier VS
+ versions will do for these, when applicable)
+
+* This GLib refers to a build that is built by VS9
+
+Set up the source tree as follows under some arbitrary top
+folder <root>:
+
+<root>\atk\<this-atk-source-tree>
+<root>\vs9\<PlatformName>
+
+*this* file you are now reading is thus located at
+<root>\atk\<this-atk-source-tree>\build\win32\vs9\README.
+
+<PlatformName> is either Win32 or x64, as in VS9 project files.
+
+You should unpack the <dependent-package>-dev and <dependent-packge> (runtime)
+into <root>\vs9\<PlatformName>, if you download any of the packages from
+
+http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ (32-bit) -OR-
+http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ (64-bit)
+
+so that for instance libintl.h end up at
+<root>\vs9\<PlatformName>\include\libintl.h.
+
+If you build any of the dependencies yourselves, copy the:
+-DLLs and EXEs into <root>\vs9\<PlatformName>\bin
+-headers into <root>\vs9\<PlatformName>\include\
+-LIBs into <root>\vs9\<PlatformName>\lib
+
+If you have not built GLib with VS9 and placed the LIBs and headers in a
+place where VS9 can find them automatically, you should also uncompress
+your GLib sources in <root>\ and build it from there, following the
+instructions in <root>\glib<-version>\build\win32\vs9, so that the required
+headers, EXEs, DLLs and LIBs will end up in
+<root>\vs9\<PlatformName>\include\glib-2.0 (headers)
+<root>\vs9\<PlatformName>\lib (LIBs, also glib-2.0/include/glibocnfig.h)
+<root>\vs9\<PlatformName>\bin (EXEs/DLLs)
+respectively.
+
+After the build of ATK, the "install" project will copy build results
+and headers into their appropriate location under <root>\vs9\<PlatformName>.
+For instance, built DLLs go into <root>\vs9\<PlatformName>\bin, built LIBs into
+<root>\vs9\<PlatformName>\lib and atk headers into
+<root>\vs9\<PlatformName>\include\atk-1.0. This is then from where
+project files higher in the stack are supposed to look for them, not
+from a specific ATK source tree.
+
+--Chun-wei Fan <fanc999@yahoo.com.tw>
+--(adapted from the GLib VS9 README.txt file originally written by Tor Lillqvist)
diff --git a/build/win32/vs9/atk-build-defines.vsprops b/build/win32/vs9/atk-build-defines.vsprops new file mode 100644 index 0000000..351d19e --- /dev/null +++ b/build/win32/vs9/atk-build-defines.vsprops @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="Windows-1252"?> +<VisualStudioPropertySheet + ProjectType="Visual C++" + Version="8.00" + Name="atkbuilddefinesprops" + OutputDirectory="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin" + IntermediateDirectory="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\obj\$(ProjectName)\" + InheritedPropertySheets=".\atk-version-paths.vsprops" + > + <Tool + Name="VCCLCompilerTool" + AdditionalIncludeDirectories="..\..\..;..\..\..\atk;$(GLibEtcInstallRoot)\include;$(GLibEtcInstallRoot)\include\glib-2.0;$(GLibEtcInstallRoot)\lib\glib-2.0\include\" + PreprocessorDefinitions="HAVE_CONFIG_H;G_DISABLE_SINGLE_INCLUDES" + ForcedIncludeFiles="msvc_recommended_pragmas.h" + /> + <Tool + Name="VCLinkerTool" + AdditionalDependencies="glib-2.0.lib gobject-2.0.lib gmodule-2.0.lib intl.lib" + AdditionalLibraryDirectories="$(GLibEtcInstallRoot)\lib" + /> + <UserMacro + Name="AtkDefines" + Value="ATK_COMPILATION;DLL_EXPORT;ATK_LOCALEDIR=\"/dummy/share/locale\"" + /> +</VisualStudioPropertySheet> diff --git a/build/win32/vs9/atk-gen-src.vsprops b/build/win32/vs9/atk-gen-src.vsprops new file mode 100644 index 0000000..d3fc31f --- /dev/null +++ b/build/win32/vs9/atk-gen-src.vsprops @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="Windows-1252"?> +<VisualStudioPropertySheet + ProjectType="Visual C++" + Version="8.00" + Name="atkgensrcprops" + InheritedPropertySheets=".\atk-build-defines.vsprops" + > + <UserMacro + Name="GenConfigH" + Value=" +if exist ..\..\..\config.h goto DONE_CONFIG_H
 +copy ..\..\..\config.h.win32 ..\..\..\config.h
 +:DONE_CONFIG_H
 + " + /> + <UserMacro + Name="GenMarshalSrc" + Value=" +cd ..\..\..\atk
 +$(GLibEtcInstallRoot)\bin\glib-genmarshal --prefix=atk_marshal atkmarshal.list --header > atkmarshal.h
 +$(GLibEtcInstallRoot)\bin\glib-genmarshal --prefix=atk_marshal atkmarshal.list --body > atkmarshal.c
 +cd $(SolutionDir)
 + " + /> + <UserMacro + Name="GenerateAtkDef" + Value=" +echo EXPORTS > $(DefDir)\atk.def
 +cl /EP ..\..\..\atk\atk.symbols >> $(DefDir)\atk.def + " + /> +</VisualStudioPropertySheet> diff --git a/build/win32/vs9/atk-install.vspropsin b/build/win32/vs9/atk-install.vspropsin new file mode 100644 index 0000000..5bf3b73 --- /dev/null +++ b/build/win32/vs9/atk-install.vspropsin @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="Windows-1252"?> +<VisualStudioPropertySheet + ProjectType="Visual C++" + Version="8.00" + Name="atkinstallprops" + InheritedPropertySheets=".\atk-build-defines.vsprops" + > + <UserMacro + Name="AtkDoInstall" + Value=" +mkdir $(CopyDir)
 +mkdir $(CopyDir)\bin
 +copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\*.dll $(CopyDir)\bin
 + +mkdir $(CopyDir)\lib
 +copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\*-$(ApiVersion).lib $(CopyDir)\lib
 + +mkdir $(CopyDir)\include\atk-$(ApiVersion)\atk
 +#include "atk.vs9instfiles" +" + /> +</VisualStudioPropertySheet> diff --git a/build/win32/vs9/atk-version-paths.vsprops b/build/win32/vs9/atk-version-paths.vsprops new file mode 100644 index 0000000..0feaded --- /dev/null +++ b/build/win32/vs9/atk-version-paths.vsprops @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="Windows-1252"?> +<VisualStudioPropertySheet + ProjectType="Visual C++" + Version="8.00" + Name="atkversionpathsprops" + > + <UserMacro + Name="VSVer" + Value="9" + /> + <UserMacro + Name="GLibEtcInstallRoot" + Value="$(SolutionDir)\..\..\..\..\vs$(VSVER)\$(PlatformName)" + /> + <UserMacro + Name="CopyDir" + Value="$(GLibEtcInstallRoot)" + /> + <UserMacro + Name="DefDir" + Value="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\obj\$(ProjectName)" + /> + <UserMacro + Name="ApiVersion" + Value="1.0" + /> + <UserMacro + Name="AtkLibtoolCompatibleDllPrefix" + Value="lib" + /> + <UserMacro + Name="AtkLibtoolCompatibleDllSuffix" + Value="-$(ApiVersion)-0" + /> + <UserMacro + Name="AtkSeparateVSDllPrefix" + Value="" + /> + <UserMacro + Name="AtkSeparateVSDllSuffix" + Value="-1-vs$(VSVER)" + /> + <!-- Change these two to AtkLibtoolCompatibleDllPrefix and + AtkLibtoolCompatibleDllSuffix if that is what you want --> + <UserMacro + Name="AtkDllPrefix" + Value="$(AtkSeparateVSDllPrefix)" + /> + <UserMacro + Name="AtkDllSuffix" + Value="$(AtkSeparateVSDllSuffix)" + /> +</VisualStudioPropertySheet> diff --git a/build/win32/vs9/atk.sln b/build/win32/vs9/atk.sln new file mode 100644 index 0000000..d2c9af7 --- /dev/null +++ b/build/win32/vs9/atk.sln @@ -0,0 +1,39 @@ +
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "atk", "atk.vcproj", "{86EACD59-F69F-4AAD-854B-AA03D5447360}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "install", "install.vcproj", "{00702787-1566-484D-991F-3E7E459BB909}"
+ ProjectSection(ProjectDependencies) = postProject
+ {86EACD59-F69F-4AAD-854B-AA03D5447360} = {86EACD59-F69F-4AAD-854B-AA03D5447360}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
+ Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Debug|Win32.ActiveCfg = Debug|Win32
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Debug|Win32.Build.0 = Debug|Win32
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Release|Win32.ActiveCfg = Release|Win32
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Release|Win32.Build.0 = Release|Win32
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Debug|x64.ActiveCfg = Debug|x64
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Debug|x64.Build.0 = Debug|x64
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Release|x64.ActiveCfg = Release|x64
+ {86EACD59-F69F-4AAD-854B-AA03D5447360}.Release|x64.Build.0 = Release|x64
+ {00702787-1566-484D-991F-3E7E459BB909}.Debug|Win32.ActiveCfg = Debug|Win32
+ {00702787-1566-484D-991F-3E7E459BB909}.Debug|Win32.Build.0 = Debug|Win32
+ {00702787-1566-484D-991F-3E7E459BB909}.Release|Win32.ActiveCfg = Release|Win32
+ {00702787-1566-484D-991F-3E7E459BB909}.Release|Win32.Build.0 = Release|Win32
+ {00702787-1566-484D-991F-3E7E459BB909}.Debug|x64.ActiveCfg = Debug|x64
+ {00702787-1566-484D-991F-3E7E459BB909}.Debug|x64.Build.0 = Debug|x64
+ {00702787-1566-484D-991F-3E7E459BB909}.Release|x64.ActiveCfg = Release|x64
+ {00702787-1566-484D-991F-3E7E459BB909}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/build/win32/vs9/atk.vcprojin b/build/win32/vs9/atk.vcprojin new file mode 100644 index 0000000..ec1174c --- /dev/null +++ b/build/win32/vs9/atk.vcprojin @@ -0,0 +1,281 @@ +<?xml version="1.0" encoding="big5"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="9.00" + Name="atk" + ProjectGUID="{86EACD59-F69F-4AAD-854B-AA03D5447360}" + RootNamespace="atk" + Keyword="Win32Proj" + TargetFrameworkVersion="196613" + > + <Platforms> + <Platform + Name="Win32" + /> + <Platform + Name="x64" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + ConfigurationType="2" + InheritedPropertySheets=".\atk-gen-src.vsprops" + CharacterSet="2" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + PreprocessorDefinitions="_DEBUG;$(AtkDefines)" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="4" + /> + <Tool + Name="VCLinkerTool" + OutputFile="$(OutDir)\$(AtkDllPrefix)$(ProjectName)$(AtkDllSuffix).dll" + LinkIncremental="2" + IgnoreDefaultLibraryNames="" + ModuleDefinitionFile="$(IntDir)\atk.def" + GenerateDebugInformation="true" + SubSystem="2" + ImportLibrary="$(OutDir)\$(ProjectName)-$(ApiVersion).lib" + TargetMachine="1" + /> + </Configuration> + <Configuration + Name="Release|Win32" + ConfigurationType="2" + InheritedPropertySheets=".\atk-gen-src.vsprops" + CharacterSet="2" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="2" + EnableIntrinsicFunctions="true" + PreprocessorDefinitions="$(AtkDefines)" + RuntimeLibrary="2" + EnableFunctionLevelLinking="true" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + /> + <Tool + Name="VCLinkerTool" + OutputFile="$(OutDir)\$(AtkDllPrefix)$(ProjectName)$(AtkDllSuffix).dll" + LinkIncremental="1" + IgnoreDefaultLibraryNames="" + ModuleDefinitionFile="$(IntDir)\atk.def" + GenerateDebugInformation="true" + SubSystem="2" + OptimizeReferences="2" + EnableCOMDATFolding="2" + ImportLibrary="$(OutDir)\$(ProjectName)-$(ApiVersion).lib" + TargetMachine="1" + /> + </Configuration> + <Configuration + Name="Debug|x64" + InheritedPropertySheets=".\atk-gen-src.vsprops" + ConfigurationType="2" + CharacterSet="2" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + PreprocessorDefinitions="_DEBUG;$(AtkDefines)" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + /> + <Tool + Name="VCLinkerTool" + AdditionalDependencies="" + OutputFile="$(OutDir)\$(AtkDllPrefix)$(ProjectName)$(AtkDllSuffix).dll" + LinkIncremental="2" + ModuleDefinitionFile="$(IntDir)\atk.def" + GenerateDebugInformation="true" + SubSystem="2" + ImportLibrary="$(TargetDir)$(ProjectName)-$(ApiVersion).lib" + TargetMachine="17" + /> + </Configuration> + <Configuration + Name="Release|x64" + InheritedPropertySheets=".\atk-gen-src.vsprops" + ConfigurationType="2" + CharacterSet="2" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCLCompilerTool" + PreprocessorDefinitions="$(AtkDefines)" + RuntimeLibrary="2" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + /> + <Tool + Name="VCLinkerTool" + AdditionalDependencies="" + OutputFile="$(OutDir)\$(AtkDllPrefix)$(ProjectName)$(AtkDllSuffix).dll" + LinkIncremental="2" + ModuleDefinitionFile="$(IntDir)\atk.def" + GenerateDebugInformation="true" + SubSystem="2" + OptimizeReferences="2" + EnableCOMDATFolding="2" + ImportLibrary="$(TargetDir)$(ProjectName)-$(ApiVersion).lib" + TargetMachine="17" + /> + </Configuration> + </Configurations> + <References> + </References> + <Files> + <Filter + Name="Sources" + Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" + UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" + > +#include "atk.sourcefiles" + </Filter> + <Filter + Name="Headers" + Filter="h;hpp;hxx;hm;inl;inc;xsd" + UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" + > + </Filter> + <Filter + Name="Resource Files" + Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" + UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" + > + <File RelativePath="..\..\..\config.h.win32"> + <FileConfiguration Name="Debug|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Copying config.h from config.h.win32..." + CommandLine="$(GenConfigH)" + Outputs="..\..\..\config.h" + /> + </FileConfiguration> + <FileConfiguration Name="Release|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Copying config.h from config.h.win32..." + CommandLine="$(GenConfigH)" + Outputs="..\..\..\config.h" + /> + </FileConfiguration> + <FileConfiguration Name="Debug|x64"> + <Tool + Name="VCCustomBuildTool" + Description="Copying config.h from config.h.win32..." + CommandLine="$(GenConfigH)" + Outputs="..\..\..\config.h" + /> + </FileConfiguration> + <FileConfiguration Name="Release|x64"> + <Tool + Name="VCCustomBuildTool" + Description="Copying config.h from config.h.win32..." + CommandLine="$(GenConfigH)" + Outputs="..\..\..\config.h" + /> + </FileConfiguration> + </File> + <File RelativePath="..\..\..\atk\atkmarshal.list"> + <FileConfiguration Name="Debug|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Generating Marshalling Sources..." + CommandLine="$(GenMarshalSrc)" + Outputs="..\..\..\atk\atkmarshal.h;..\..\..\atk\atkmarshal.c" + /> + </FileConfiguration> + <FileConfiguration Name="Release|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Generating Marshalling Sources..." + CommandLine="$(GenMarshalSrc)" + Outputs="..\..\..\atk\atkmarshal.h;..\..\..\atk\atkmarshal.c" + /> + </FileConfiguration> + <FileConfiguration Name="Debug|x64"> + <Tool + Name="VCCustomBuildTool" + Description="Generating Marshalling Sources..." + CommandLine="$(GenMarshalSrc)" + Outputs="..\..\..\atk\atkmarshal.h;..\..\..\atk\atkmarshal.c" + /> + </FileConfiguration> + <FileConfiguration Name="Release|x64"> + <Tool + Name="VCCustomBuildTool" + Description="Generating Marshalling Sources..." + CommandLine="$(GenMarshalSrc)" + Outputs="..\..\..\atk\atkmarshal.h;..\..\..\atk\atkmarshal.c" + /> + </FileConfiguration> + </File> + <File RelativePath="..\..\..\atk\atk.symbols"> + <FileConfiguration Name="Debug|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Generating atk.def..." + CommandLine="$(GenerateAtkDef)" + Outputs="$(IntDir)\atk.def" + /> + </FileConfiguration> + <FileConfiguration Name="Release|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Generating atk.def..." + CommandLine="$(GenerateAtkDef)" + Outputs="$(IntDir)\atk.def" + /> + </FileConfiguration> + <FileConfiguration Name="Debug|x64"> + <Tool + Name="VCCustomBuildTool" + Description="Generating atk.def..." + CommandLine="$(GenerateAtkDef)" + Outputs="$(IntDir)\atk.def" + /> + </FileConfiguration> + <FileConfiguration Name="Release|x64"> + <Tool + Name="VCCustomBuildTool" + Description="Generating atk.def..." + CommandLine="$(GenerateAtkDef)" + Outputs="$(IntDir)\atk.def" + /> + </FileConfiguration> + </File> + <File RelativePath="..\..\..\atk\atk.rc" /> + </Filter> + </Files> + <Globals> + </Globals> +</VisualStudioProject> diff --git a/build/win32/vs9/install.vcproj b/build/win32/vs9/install.vcproj new file mode 100644 index 0000000..dcbdb53 --- /dev/null +++ b/build/win32/vs9/install.vcproj @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="big5"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="9.00" + Name="install" + ProjectGUID="{00702787-1566-484D-991F-3E7E459BB909}" + RootNamespace="install" + TargetFrameworkVersion="196613" + > + <Platforms> + <Platform + Name="Win32" + /> + <Platform + Name="x64" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + OutputDirectory="$(GLibEtcInstallRoot)" + IntermediateDirectory="$(ConfigurationName)" + ConfigurationType="10" + InheritedPropertySheets=".\atk-install.vsprops" + CharacterSet="2" + > + <Tool + Name="VCPostBuildEventTool" + CommandLine="$(AtkDoInstall)" + /> + </Configuration> + <Configuration + Name="Debug|x64" + OutputDirectory="$(GLibEtcInstallRoot)" + InheritedPropertySheets=".\atk-install.vsprops" + ConfigurationType="10" + CharacterSet="2" + DeleteExtensionsOnClean="" + > + <Tool + Name="VCPreBuildEventTool" + CommandLine="$(AtkDoInstall)" + /> + </Configuration> + <Configuration + Name="Release|Win32" + OutputDirectory="$(GLibEtcInstallRoot)" + IntermediateDirectory="$(ConfigurationName)" + ConfigurationType="10" + InheritedPropertySheets=".\atk-install.vsprops" + CharacterSet="2" + WholeProgramOptimization="1" + > + <Tool + Name="VCPostBuildEventTool" + CommandLine="$(AtkDoInstall)" + /> + </Configuration> + <Configuration + Name="Release|x64" + OutputDirectory="$(GLibEtcInstallRoot)" + InheritedPropertySheets=".\atk-install.vsprops" + ConfigurationType="10" + CharacterSet="2" + WholeProgramOptimization="1" + DeleteExtensionsOnClean="" + > + <Tool + Name="VCPreBuildEventTool" + CommandLine="$(AtkDoInstall)" + /> + </Configuration> + </Configurations> + <References> + </References> + <Files> + </Files> + <Globals> + </Globals> +</VisualStudioProject> |