summaryrefslogtreecommitdiff
path: root/src/gtk/symbolconverter.sh
blob: 66b2b33d9b2c4d90f3941baac87fa581bc9c7f78 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
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"