| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Standardize on using VSVer, like the other parts of the GTK+/Clutter stack,
it makes it easier to use a script to support later Visual Studio versions.
|
|
|
|
|
|
|
|
| |
Since commit f3128da2 we are passing in the .lib('s) to deduce the DLL(s)
that the introspection files need to look, so we don't have to make an
extra copy of the .lib that matches the
<namespace-name>-<namespace-version> convention anymore. Clean up a bit
as a result.
|
| |
|
|
|
|
| |
For GNOME 3.13.3
|
| |
|
|
|
|
|
|
|
| |
Clarify what an attribute is, in response to a question on
gir-devel-list.
https://bugzilla.gnome.org/show_bug.cgi?id=732078
|
|
|
|
|
|
| |
The g-ir-scanner has a new command line switch since commit
a882381f83f0acc6aaf7bfa03e1faa1c41a7ba00, so it'd be nice to have a
version number we can use in checks.
|
|
|
|
|
| |
There aren't architecture-specific naming for binaries for g-i on Windows,
so don't bother checking for them.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, due to the way that Visual Studio 2010+ projects are handled,
the "install" project does not re-build upon changes to the sources, as it
does not believe that its dependencies have changed, although the changed
sources are automatically recompiled. This means that if a part or more
of the solution does not build, or if the sources need some other fixes
or enhancements, the up-to-date build is not copied automatically, which
can be misleading.
Improve on the situation by forcing the "install" project to trigger its
rebuild, so that the updated binaries can be copied. This does trigger an
MSBuild warning, but having that warning is way better than not having an
up-to-date build, especially during testing and development.
|
|
|
|
|
| |
Add missing identfilter.py to EXTRA_DIST and correct spelling of
Identfilter-1.0-expected.gir.
|
|
|
|
|
|
|
|
|
| |
Add the command line flag --identifier-filter-cmd to g-ir-scanner which
allows running identifier names through a filtering shell command. The
identifier is sent as stdin to the filter command and expects a filtered
result written to stdout.
https://bugzilla.gnome.org/show_bug.cgi?706898
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=728409
|
| |
|
| |
|
|
|
|
|
|
|
| |
Clarify the meaning of 'may be null' in the docs: it refers to the value
of the argument itself, not the reference to the argument.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
| |
Add ANN_NULLABLE and ANN_OPTIONAL in the one (and only) other place that
ANN_ALLOW_NONE is mentioned...
|
|
|
|
|
| |
Now that Cancellable and AsyncReadyCallback are being correctly
recognised again, adjust the expected output of the Regress testcase.
|
|
|
|
|
|
|
| |
Add (nullable) and (optional) as recognised annotations in the same places that
(allow-none) is allowed. This should have been done in the previous
commits but the tests were passing because the only ill effect was that
a warning was issued.
|
|
|
|
|
|
|
| |
This reverts commit 0839e696e9fbc1942ac5c61054de3b47e9578152.
This was accidentally picked up by my 'git bz apply' against the bug as
I was getting ready to push the last set of changes.
|
|
|
|
|
|
|
|
| |
In the case that a parameter has not been explicitly annotated, the
value of node.direction will be None, not 'in'. Instead of comparing as
== 'in' we should therefore check for being != 'out'.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
| |
Parse the 'nullable' attribute on parameters and function return types.
Additionally, tweak the meaning of the 'allow-none' attribute. We now
only treat it as equivalent to 'nullable' for non-out parameters. For
out parameters, we treat it to mean the same as the already-recognised
'optional' parameter (which we only recently started actually using).
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
| |
Rename the "allow_none" parameter on internal/private structure ArgBlob
to "nullable".
This is a straight rename with no other changes.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
| |
Promote the 'nullable' field to the TypeContainer base class (which is
shared by Return and Parameter types).
Add .gir support for nullability on return values, both in the writer
and in the (scanner's) parser.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
| |
Add two new annotations, (nullable) and (optional).
(nullable) always means "the type of this value can also contain null".
(optional) always means "this out parameter can be ignored by passing
NULL to the C function".
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Record our internal 'nullable' and 'optional' attributes into the
written .gir file. It is now theoretically possible to express the
concept of an out parameter with a nullable type (although presently
there is no way to do this).
Modify our own internal parser (in the scanner) to understand the
newly-written attributes.
Update the expected output of the 'Regress-1.0.gir' test to account for
the new attributes.
Nothing else understands 'nullable' yet, but the girparser in the
typelib compiler already understands 'optional' and records a bit for it
in the typelib.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|