| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
We use the __declspec(dllexport) mechanism for exporting the symbols from
the girepository DLL during the build since some time ago, but forgot to
remove the .def-generating items from the project files, notably the MSVC
2010+ ones, which could have well broke those builds. Sorry.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
This fixes some fallouts from commit d281b07c4aba18d3
"build: Export Symbols Using Compiler Directives"
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
| |
We have special code to look at (type GLib.List(utf8)), but (type
GLib.PtrArray(utf8)) didn't work.
This allows NetworkManager to annotate the ActiveConnections property.
https://bugzilla.gnome.org/show_bug.cgi?id=733879
|
|
|
|
|
|
|
|
| |
Like the update to tests/Makefile.am, update gi-tests-msvc.mak so that
everything.[c|h] can be generated with the symbols annotated for export and
the headers that define those annotations can be pulled in appropriately.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
| |
Make use of the new options in codegen.py/testcodegen.py so that the
symbols in the generated everything.[c|h] can be annotated for export, and
the necessary headers to facilitate the compile-time symbol exporting can
be included appropriately.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds options to scannermain so that we can decorate functions with
macros as needed, so that we can use compiler annotations for symbol export
for example.
Options are also added to include headers before or after the main include
block at the top so that we can include headers as necessary in the
generated sources and/or headers, so that we could for example grab
definitions from those headers as needed, such as to grab definitions of
macros used for symbol export.
The testcodegen.py script has been updated as well to make use of this
functionality, if needed.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
| |
Like the other test programs, include config.h before anything and decorate
the lone symbols for export, and include $(top_srcdir)/tests so that
gitestmacros.h can be found and used.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
The annotation for gi_marshalling_tests_object_int8_out used the wrong
function name, causing the annotation not to be picked up.
https://bugzilla.gnome.org/show_bug.cgi?id=727665
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This updates giscanner/scannerlexer.l by ignoring the Visual C++-specific
directives, so that the scanner will not bail out while trying to produce
the introspection dumper program source code, and silence many of the
warnings that are produced in the process.
As the Visual C++ processor produces slightly different line markers, we
need to handle this here as well, otherwise the sources/headers would not
be processed to acquire the _get_type and _get_gtype symbols to put in the
introspection dumper sources, producing bad results.
https://bugzilla.gnome.org/show_bug.cgi?id=728313
|
|
|
|
| |
This reverts commit 7a82752734b496bb619fce62572c0c7f8578350a.
|
|
|
|
|
|
|
|
| |
Update everything.h include the header used to decorate symbols with the
macro for export and everything.c to include config.h first, and have the
symbols decorated with the aforementioned macro.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
| |
... so that the header that defines the export macro can be found when the
test programs/DLLs are built
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
| |
Remove references in the project files to try to create a .def file and
using it to export symbols for libgirepository, as they are now exported
using __declspec(dllexport).
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
| |
This updates the pre-defined config.h.win32(.in) so that the Visual Studio
builds can use so that symbols for libgirepository and the test libraries
can be exported using the compiler directive __declspec(dllexport), without
the use of .def files.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
|
|
| |
Use compiler directives for exporting symbols for the build of
libgirepository and also for the test libraries, like what is now done
in GLib and GTK+ so that maintaining a separate .symbols (and .def files)
would not be needed, in which the correct compiler directive is determined
during configure time. Drop all the .def files and the .symbols file as
we would not be using them anymore.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
|
| |
This updates the test headers and sources to decorate the symbols with the
macro that can be used to export the symbols, and include config.h first in
the c-sources so that the macro can be defined with the compiler directive
to export the symbols. Update the CFLAGS as well so that the header that
defines the export decoration macro can be found.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
| |
This updates the test headers and sources to decorate the symbols with the
macro that can be used to export the symbols, and include config.h first in
the c-sources so that the macro can be defined with the compiler directive
to export the symbols.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a header to the girepository library, which is then included
either directly or indirectly by the other headers so that all the public
symbols (and the 2 symbols in gitypelib-internal.h used by the tools) are
decorated by a macro, that can later be used to export the symbols and also
to be used to display compile-time warnings for usage of deprecated APIs,
which is like what is now being done in GLib (and GTK+, Clutter, and so
on).
This marks the first step that we begin to stop depending on the .symbols/
.def files to export the symbols.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
|
| |
This adds a header under tests/ that can be included by the various test
libraries/sources so that symbols from them can be decorated by a macro,
which can then be used to export symbols by using a compiler directive,
like the updates to girepository. This header is also installed as the
test headers refer to them.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
| |
unistd.h is not universally available, and dropping that include did not
seem to cause any warnings or errors, and did not affect the tests running.
https://bugzilla.gnome.org/show_bug.cgi?id=734640
|
|
|
|
|
|
| |
Update based additional test added with commit e2b96aaa4
https://bugzilla.gnome.org/show_bug.cgi?id=702508
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=702508
|
|
|
|
|
|
| |
Make sure a constructor that sets a GError works correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=727004
|
|
|
|
|
|
| |
New versions of msys2 provide a MINGW64 env variable instead.
https://bugzilla.gnome.org/show_bug.cgi?id=734163
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a CCompiler module for the giscanner Python scripts so that items
related to the run of the preprocessor, compiler and linker can be done in
this module, and this marks the beginning of the move of building the
introspection files using Python's distutils.
This patch first moves _add_[internal|external]_link_flags() to
ccompiler.py as get_[internal|external]_link_flags and also moves the
Windows shlibs resolution (deducing the DLLs the introspection files should
link to from the libraries passed in) in shlibs.py to
resolve_windows_libs() in ccompiler.py
https://bugzilla.gnome.org/show_bug.cgi?id=728313
|
|
|
|
|
|
|
| |
Use the special os.path.expanduser('~'), as it it more portable, instead of
quering the HOME or HOMEPATH envvar.
https://bugzilla.gnome.org/show_bug.cgi?id=732668
|
| |
|
| |
|
|
|
|
| |
And update glib annotations from glib 2.41.2
|
| |
|
|
|
|
|
|
|
|
|
| |
This includes config.h in all the C-sources of girepository so that we can
get the correct export directive from config.h during compile time and
therefore export the symbols as necessary, like what GLib and GTK+ is
currently doing.
https://bugzilla.gnome.org/show_bug.cgi?id=732669
|
|
|
|
|
|
|
|
|
|
| |
On Windows, checking for $(HOME) will work in a MSYS shell but not in
cmd.exe (i.e. Visual Studio command prompt), so we need to check for
HOMEPATH when we are building under a Visual Studio command prompt to get
the users's home directory correctly. This will enable g-ir-doc-tool to
work on Windows when run from cmd.exe.
https://bugzilla.gnome.org/show_bug.cgi?id=732668
|
|
|
|
|
|
|
| |
This drops Visual Studio projects that does the build of the Test DLLs, as
the new NMake Makefiles will cover the building of them. Please note that
the cmph test program is still built with the Visual Studio projects
though.
|
|
|
|
|
|
|
| |
The NMake Makefiles that build the tests cover these, so remove the parts
building the Test DLLs from the solution files. This is done as a separate
commit as solution files must have DOS/Windows line endings, not UNIX line
endings.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds NMake Makefiles for one to build the tests for Visual Studio
builds, which is not done with an MSYS shell. Shared items from the
existing NMake Makefiles for building the introspection files, which are
also used to build the tests, are split out into common NMake Makefiles,
which are then included.
This also means that we do not need to include the test_gir_cmd.txt for
people to look at when building the tests as the NMake Makefiles will do
the job for them, which cover the material there.
|
|
|
|
|
| |
...so that people can use it as a first check that g-i and the
introspection files are built properly.
|
|
|
|
|
|
|
|
| |
As the MSVC 2010 x64 (and later) compiler/linker do not have the
optimization bug that prevents g-ir-compiler.exe from being built (due to
a compiler/linker hang) under /O2 (max speed) (or /Ox, complete
optimization), use /O2 for the optimization setting, like the other parts
of g-i under Visual Studio 2010.
|
|
|
|
|
|
|
|
| |
Due to an optimization bug in the Visual Studio 2008 x64 compiler/linker,
compilation of some programs shipped with g-i will hang, so use different
optimization settings for it, so that programs built through the NMake
Makefiles can build correctly. A similar setting for the g-ir-compiler
is already in there.
|
|
|
|
|
|
|
|
|
|
|
| |
Knowing the ownership transfer for instance parameters is
necessary for correct memory management of functions which
"eat" their instance argument, such as g_dbus_method_invocation_return_*.
Parse this information from the gir file and store in the
typelib, and then provide new API on GICallableInfo to
retrieve this.
https://bugzilla.gnome.org/show_bug.cgi?id=729662
|
| |
|
|
|
|
|
|
| |
'relocatable' at runtime.
https://bugzilla.gnome.org/show_bug.cgi?id=620566
|
|
|
|
|
|
|
|
|
|
|
|
| |
As the Visual Studio 2012/2013 are only slightly different from the Visual
Studio 2010 projects, we can provide support for them by using scripts to
copy the Visual Studio 2010 projects, and update the specific parts as
necessary.
Thus, there would be little maintenance overhead for these as only the 2010
projects need to be kept up-to-date as a result. This might change when we
do get the stack working with WinRT/Metro, but that's going to be another
totally different issue.
|