Fix problems discovered while testing on Windows.
* Set the working directory for glib-genmarshal correctly. * Use one more path suffix when searching for glibconfig.h. * Don't assume that gdk_screen_get_resolution() returns a useful value.
This commit is contained in:
parent
b44b3e6a54
commit
9dc1822040
|
@ -123,7 +123,16 @@ function (glib_genmarshal base prefix)
|
||||||
set (command_base ${GLIB_GENMARSHAL_EXECUTABLE}
|
set (command_base ${GLIB_GENMARSHAL_EXECUTABLE}
|
||||||
--prefix ${prefix} "${base_name}.list")
|
--prefix ${prefix} "${base_name}.list")
|
||||||
|
|
||||||
# NOTE: VERBATIM may cause problems, so it is not used here
|
# On Windows, the final makefile may contain:
|
||||||
|
# cd e:\abc && ...
|
||||||
|
# That won't actually change the directory. We have to do:
|
||||||
|
# cd e:\abc && e: && ...
|
||||||
|
if (WIN32 AND "${base_path}" MATCHES "^.:[/\\\\]")
|
||||||
|
string (SUBSTRING "${base_path}" 0 2 base_drive)
|
||||||
|
set (command_base "${base_drive}" && "${command_base}")
|
||||||
|
endif (WIN32 AND "${base_path}" MATCHES "^.:[/\\\\]")
|
||||||
|
|
||||||
|
# NOTE: VERBATIM would cause problems, so it is not used here
|
||||||
add_custom_command (OUTPUT ${base}.c
|
add_custom_command (OUTPUT ${base}.c
|
||||||
COMMAND ${command_base} --body > "${base_name}.c"
|
COMMAND ${command_base} --body > "${base_name}.c"
|
||||||
DEPENDS "${base}.list"
|
DEPENDS "${base}.list"
|
||||||
|
|
|
@ -38,7 +38,7 @@ find_path (JSON_GLIB_INCLUDE_DIR_GOBJECT glib-object.h
|
||||||
|
|
||||||
find_path (JSON_GLIB_INCLUDE_DIR_GLIBCONFIG glibconfig.h
|
find_path (JSON_GLIB_INCLUDE_DIR_GLIBCONFIG glibconfig.h
|
||||||
PATHS /usr/lib
|
PATHS /usr/lib
|
||||||
PATH_SUFFIXES glib-2.0/include)
|
PATH_SUFFIXES glib-2.0 glib-2.0/include)
|
||||||
|
|
||||||
find_library (JSON_GLIB_LIBRARIES json-glib-1.0)
|
find_library (JSON_GLIB_LIBRARIES json-glib-1.0)
|
||||||
|
|
||||||
|
|
|
@ -36,6 +36,9 @@
|
||||||
/* Tolerance on all sides of symbols for strokes. */
|
/* Tolerance on all sides of symbols for strokes. */
|
||||||
#define SYMBOL_AREA_TOLERANCE 0.5
|
#define SYMBOL_AREA_TOLERANCE 0.5
|
||||||
|
|
||||||
|
/* The default screen resolution in DPI units. */
|
||||||
|
#define DEFAULT_SCREEN_RESOLUTION 96
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* LdCanvasPrivate:
|
* LdCanvasPrivate:
|
||||||
* @diagram: A diagram object assigned to this canvas as a model.
|
* @diagram: A diagram object assigned to this canvas as a model.
|
||||||
|
@ -455,11 +458,16 @@ ld_canvas_get_library (LdCanvas *self)
|
||||||
static gdouble
|
static gdouble
|
||||||
ld_canvas_get_base_unit_in_px (GtkWidget *self)
|
ld_canvas_get_base_unit_in_px (GtkWidget *self)
|
||||||
{
|
{
|
||||||
|
gdouble resolution;
|
||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_WIDGET (self), 1);
|
g_return_val_if_fail (GTK_IS_WIDGET (self), 1);
|
||||||
|
|
||||||
|
resolution = gdk_screen_get_resolution (gtk_widget_get_screen (self));
|
||||||
|
if (resolution == -1)
|
||||||
|
resolution = DEFAULT_SCREEN_RESOLUTION;
|
||||||
|
|
||||||
/* XXX: It might look better if the unit was rounded to a whole number. */
|
/* XXX: It might look better if the unit was rounded to a whole number. */
|
||||||
return gdk_screen_get_resolution (gtk_widget_get_screen (self))
|
return resolution / MM_PER_INCH * LD_CANVAS_BASE_UNIT_LENGTH;
|
||||||
/ MM_PER_INCH * LD_CANVAS_BASE_UNIT_LENGTH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue