summaryrefslogtreecommitdiff
path: root/src/gtk/symbolconverter.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/gtk/symbolconverter.sh')
-rwxr-xr-xsrc/gtk/symbolconverter.sh61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/gtk/symbolconverter.sh b/src/gtk/symbolconverter.sh
new file mode 100755
index 000000000..66b2b33d9
--- /dev/null
+++ b/src/gtk/symbolconverter.sh
@@ -0,0 +1,61 @@
+#!/bin/sh
+
+# Fetch the GtkPlacesView files but rename the symbols to avoid symbol clashes
+
+URL=https://git.gnome.org/browse/gtk+/plain/gtk/
+URLUI=https://git.gnome.org/browse/gtk+/plain/gtk/ui/
+
+update_file () {
+ _source="$1"
+ _dest="$2"
+
+ echo "/* Do not edit: this file is generated from ${_source} */" > "${_dest}"
+ echo >> "${_dest}"
+
+ curl "${_source}" | sed \
+ -e 's/gtkplacesview/nautilusgtkplacesview/g' \
+ -e 's/gtkplacesviewrow/nautilusgtkplacesviewrow/g' \
+ -e 's/gtk_places_view/nautilus_gtk_places_view/g' \
+ -e 's/GtkPlacesView/NautilusGtkPlacesView/g' \
+ -e 's/GTK_PLACES_VIEW/NAUTILUS_GTK_PLACES_VIEW/g' \
+ -e 's/GTK_TYPE_PLACES_VIEW/NAUTILUS_TYPE_GTK_PLACES_VIEW/g' \
+ -e 's/_gtk_marshal_VOID__STRING_STRING/NULL/g' \
+ -e '/gtkintl.h/d' \
+ -e '/gtkmarshalers.h/d' \
+ -e '/gtktypebuiltins.h/d' \
+ -e 's/<gtk\/gtkbox.h>/<gtk\/gtk.h>/' \
+ -e '/gtkplacessidebar.h/d' \
+ -e '/#error /d' \
+ -e "s/P_(\(.*\))/\1/" \
+ -e "s/I_(\(.*\))/\1/" >> "${_dest}"
+}
+
+update_file "${URL}/gtkplacesview.c" "nautilusgtkplacesview.c"
+update_file "${URL}/gtkplacesviewprivate.h" "nautilusgtkplacesviewprivate.h"
+update_file "${URLUI}/gtkplacesviewrow.ui" "nautilusgtkplacesviewrow.ui"
+
+update_file () {
+ _source="$1"
+ _dest="$2"
+
+ echo "/* Do not edit: this file is generated from ${_source} */" > "${_dest}"
+ echo >> "${_dest}"
+
+ curl "${_source}" | sed \
+ -e 's/gtkplacesviewrow/nautilusgtkplacesviewrow/g' \
+ -e 's/gtk_places_view_row/nautilus_gtk_places_view_row/g' \
+ -e 's/GtkPlacesViewRow/NautilusGtkPlacesViewRow/g' \
+ -e 's/GTK_PLACES_VIEW_ROW/NAUTILUS_GTK_PLACES_VIEW_ROW/g' \
+ -e 's/GTK_TYPE_PLACES_VIEW_ROW/NAUTILUS_TYPE_GTK_PLACES_VIEW_ROW/g' \
+ -e 's/G_DECLARE_FINAL_TYPE (NautilusGtkPlacesViewRow, nautilus_gtk_places_view_row, GTK, PLACES_VIEW_ROW, GtkListBoxRow/ G_DECLARE_FINAL_TYPE (NautilusGtkPlacesViewRow, nautilus_gtk_places_view_row, NAUTILUS, GTK_PLACES_VIEW_ROW, GtkListBoxRow/g' \
+ -e 's/"gtkwidget.h"/<gtk\/gtk.h>/' \
+ -e '/gtksizegroup.h/d' \
+ -e '/gtklistbox.h/d' \
+ -e '/#error /d' \
+ -e "s/P_(\(.*\))/\1/" \
+ -e "s/I_(\(.*\))/\1/" >> "${_dest}"
+}
+
+update_file "${URL}/gtkplacesviewrow.c" "nautilusgtkplacesviewrow.c"
+update_file "${URL}/gtkplacesviewrowprivate.h" "nautilusgtkplacesviewrowprivate.h"
+update_file "${URLUI}/gtkplacesview.ui" "nautilusgtkplacesview.ui"