IdeBuildSystem

IdeBuildSystem

Types and Values

Description

Functions

ide_build_system_get_priority ()

gint
ide_build_system_get_priority (IdeBuildSystem *self);

ide_build_system_get_build_flags_async ()

void
ide_build_system_get_build_flags_async
                               (IdeBuildSystem *self,
                                IdeFile *file,
                                GCancellable *cancellable,
                                GAsyncReadyCallback callback,
                                gpointer user_data);

Asynchronously requests the build flags for a file. For autotools and C based projects, this would be similar to the $CFLAGS variable and is suitable for generating warnings and errors with clang.


ide_build_system_get_build_flags_finish ()

gchar **
ide_build_system_get_build_flags_finish
                               (IdeBuildSystem *self,
                                GAsyncResult *result,
                                GError **error);

Completes an asynchronous request to get the build flags for a file.

Returns

An array of strings containing the build flags, or NULL upon failure and error is set.

[array zero-terminated=1][transfer full]


ide_build_system_new_async ()

void
ide_build_system_new_async (IdeContext *context,
                            GFile *project_file,
                            GCancellable *cancellable,
                            GAsyncReadyCallback callback,
                            gpointer user_data);

Asynchronously creates a new IdeBuildSystem instance using the registered GIOExtensionPoint system. Each extension point will be tried asynchronously by priority until one has been found that supports project_file .

If no build system could be found, then ide_build_system_new_finish() will return NULL.

Parameters

context

IdeBuildSystem

 

project_file

A GFile containing the directory or project file.

 

cancellable

A GCancellable.

[allow-none]

callback

A callback to execute upon completion

 

user_data

User data for callback .

 

ide_build_system_new_finish ()

IdeBuildSystem *
ide_build_system_new_finish (GAsyncResult *result,
                             GError **error);

Complete an asynchronous call to ide_build_system_new_async().

Returns

An IdeBuildSystem if successful; otherwise NULL and error is set.

[transfer full]


ide_build_system_get_builder ()

IdeBuilder *
ide_build_system_get_builder (IdeBuildSystem *system,
                              IdeConfiguration *configuration,
                              GError **error);

This function returns an IdeBuilder that can be used to perform a build of the project using the configuration specified.

See ide_builder_build_async() for more information.

Parameters

system

The IdeBuildSystem to perform the build.

 

configuration

An IdeConfiguration.

 

Returns

An IdeBuilder or NULL and error is set.

[transfer full]

Types and Values

IDE_TYPE_BUILD_SYSTEM

#define IDE_TYPE_BUILD_SYSTEM (ide_build_system_get_type())

struct IdeBuildSystemInterface

struct IdeBuildSystemInterface {
  GTypeInterface parent_iface;

  gint             (*get_priority)             (IdeBuildSystem       *system);
  IdeBuilder      *(*get_builder)              (IdeBuildSystem       *system,
                                                IdeConfiguration     *configuration,
                                                GError              **error);
  void             (*get_build_flags_async)    (IdeBuildSystem       *self,
                                                IdeFile              *file,
                                                GCancellable         *cancellable,
                                                GAsyncReadyCallback   callback,
                                                gpointer              user_data);
  gchar          **(*get_build_flags_finish)   (IdeBuildSystem       *self,
                                                GAsyncResult         *result,
                                                GError              **error);
  void             (*get_build_targets_async)  (IdeBuildSystem       *self,
                                                GCancellable         *cancellable,
                                                GAsyncReadyCallback   callback,
                                                gpointer              user_data);
  GPtrArray       *(*get_build_targets_finish) (IdeBuildSystem       *self,
                                                GAsyncResult         *result,
                                                GError              **error);
};

IdeBuildSystem

typedef struct _IdeBuildSystem IdeBuildSystem;