Commit 9adddb5
Remove workarounds
Changed files (6)
modified.travis.ymlmodifiedbirdfont/GtkWindow.valamodifieddodo.pymodifiedinstall.pymodifiedlibbirdfont/SearchPaths.valamodifiedscripts/version.py
Diff
@@ -12,101 +12,19 @@ install: script: - ./configure --prefix=/usr - ./build.py- - sudo ./install.py- # FIXME: The following should all be done by the install.py script when invoked with INSTALL_ROOT=appdir- # see https://github.com/probonopd/linuxdeployqt#using-linuxdeployqt-with-travis-ci- - mkdir -p appdir/usr/bin- - mkdir -p appdir/usr/lib/x86_64-linux-gnu- - mkdir -p appdir/usr/man/man1- - mkdir -p appdir/usr/share/applications- - mkdir -p appdir/usr/share/birdfont- - mkdir -p appdir/usr/share/icons/hicolor/128x128/apps- - mkdir -p appdir/usr/share/icons/hicolor/256x256/apps- - mkdir -p appdir/usr/share/icons/hicolor/48x48/apps- - mkdir -p appdir/usr/share/locale/cs/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/de/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/el/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/es/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/fi/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/fr/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/he/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/id/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/it/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/nb/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/nl/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/oc/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/pl/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/pt_BR/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/pt/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/ru/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/sk/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/sr/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/sv/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/tr/LC_MESSAGES- - mkdir -p appdir/usr/share/locale/uk/LC_MESSAGES- - mkdir -p appdir/usr/share/metainfo- - mkdir -p appdir/usr/share/mime/packages- - cp /usr/share/birdfont/icons.birdfont appdir/usr/share/birdfont/icons.birdfont- - cp /usr/share/birdfont/bright.theme appdir/usr/share/birdfont/bright.theme- - cp /usr/share/birdfont/dark.theme appdir/usr/share/birdfont/dark.theme- - cp /usr/share/birdfont/high_contrast.theme appdir/usr/share/birdfont/high_contrast.theme- - cp /usr/share/birdfont/key_bindings.xml appdir/usr/share/birdfont/key_bindings.xml- - cp /usr/share/birdfont/birdfont_window_icon.png appdir/usr/share/birdfont/birdfont_window_icon.png- - cp /usr/share/applications/birdfont.desktop appdir/usr/share/applications/birdfont.desktop- - cp /usr/share/birdfont/ucd.sqlite appdir/usr/share/birdfont/ucd.sqlite- - cp /usr/share/birdfont/codepages.sqlite appdir/usr/share/birdfont/codepages.sqlite- - cp /usr/share/birdfont/Roboto-Regular.ttf appdir/usr/share/birdfont/Roboto-Regular.ttf- - cp /usr/share/icons/hicolor/256x256/apps/birdfont.png appdir/usr/share/icons/hicolor/256x256/apps/birdfont.png- - cp /usr/share/icons/hicolor/128x128/apps/birdfont.png appdir/usr/share/icons/hicolor/128x128/apps/birdfont.png- - cp /usr/share/icons/hicolor/48x48/apps/birdfont.png appdir/usr/share/icons/hicolor/48x48/apps/birdfont.png- - cp /usr/share/metainfo/birdfont.appdata.xml appdir/usr/share/metainfo/birdfont.appdata.xml- - cp /usr/bin/birdfont appdir/usr/bin/birdfont- - cp /usr/bin/birdfont-autotrace appdir/usr/bin/birdfont-autotrace- - cp /usr/bin/birdfont-export appdir/usr/bin/birdfont-export- - cp /usr/bin/birdfont-import appdir/usr/bin/birdfont-import- - cp /usr/lib/x86_64-linux-gnu/libbirdfont.so.36.0 appdir/usr/lib/x86_64-linux-gnu/libbirdfont.so.36.0- - cp /usr/man/man1/birdfont.1.gz appdir/usr/man/man1/birdfont.1.gz- - cp /usr/man/man1/birdfont-autotrace.1.gz appdir/usr/man/man1/birdfont-autotrace.1.gz- - cp /usr/man/man1/birdfont-export.1.gz appdir/usr/man/man1/birdfont-export.1.gz- - cp /usr/man/man1/birdfont-import.1.gz appdir/usr/man/man1/birdfont-import.1.gz- - cp /usr/share/locale/sr/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/sr/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/tr/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/tr/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/it/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/it/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/he/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/he/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/es/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/es/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/oc/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/oc/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/pt/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/pt/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/fi/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/fi/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/uk/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/uk/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/de/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/de/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/el/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/el/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/nb/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/nb/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/id/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/id/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/sv/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/sv/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/ru/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/ru/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/nl/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/nl/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/sk/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/sk/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/pl/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/pl/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/cs/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/cs/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/pt_BR/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/pt_BR/LC_MESSAGES/birdfont.mo- - cp /usr/share/locale/fr/LC_MESSAGES/birdfont.mo appdir/usr/share/locale/fr/LC_MESSAGES/birdfont.mo- - cp /usr/share/mime/packages/birdfont.xml appdir/usr/share/mime/packages/birdfont.xml- # FIXME: Workaround for https://github.com/johanmattssonm/birdfont/issues/97- - git clone https://github.com/project-portable/libunionpreload.git- - ( cd libunionpreload ; make )- - cp libunionpreload/libunionpreload.so appdir/- - |2- cat >> appdir/AppRun <<\EOF- #!/usr/bin/env sh- export HERE="$(dirname "$(readlink -f "${0}")")"- export UNION_PRELOAD="${HERE}"- export LD_PRELOAD="${HERE}/libunionpreload.so"- exec "${HERE}/usr/bin/birdfont" "$@"- EOF- chmod +x appdir/AppRun+ - ./install.py -d appdir - wget -c -nv "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage" - chmod a+x linuxdeployqt-continuous-x86_64.AppImage- - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/share/applications/*.desktop -appimage+ - ./linuxdeployqt-continuous-x86_64.AppImage --appimage-extract 'usr/bin/patchelf'+ - squashfs-root/usr/bin/patchelf --set-rpath '$ORIGIN' appdir/usr/lib/x86_64-linux-gnu/libbirdfont.so.*.*+ - ( cd appdir/usr/lib/ ; ln -s x86_64-linux-gnu/lib* . )+ - find appdir/+ - export LD_LIBRARY_PATH=./appdir/usr/lib:./appdir/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH+ - |2+ ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/share/applications/*.desktop -appimage \+ -executable=appdir/usr/bin/birdfont-autotrace \+ -executable=appdir/usr/bin/birdfont-export \+ -executable=appdir/usr/bin/birdfont-import after_success: - wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh@@ -1,5 +1,5 @@ /*- Copyright (C) 2012s 2013 2014 Johan Mattsson+ Copyright (C) 2012 2013 2014 Johan Mattsson This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by@@ -103,6 +103,7 @@ def make_birdfont(target_binary, deps): $({pkg-config} --libs {gee}) \ $({pkg-config} --libs gio-2.0) \ $({pkg-config} --libs cairo) \+ $({pkg-config} --libs cairo-gobject) \ $({pkg-config} --libs glib-2.0) \ $({pkg-config} --libs gdk-pixbuf-2.0) \ $({pkg-config} --libs webkit2gtk-4.0) \@@ -160,6 +161,7 @@ def make_birdfont_export(target_binary, deps): $({pkg-config} --libs {gee}) \ $({pkg-config} --libs gio-2.0) \ $({pkg-config} --libs cairo) \+ $({pkg-config} --libs cairo-gobject) \ $({pkg-config} --libs glib-2.0) \ $({pkg-config} --libs xmlbird) \ -L./build -L./build/bin -l birdgems \@@ -202,6 +204,7 @@ def make_birdfont_import(target_binary, deps): $({pkg-config} --cflags {gee}) \ $({pkg-config} --cflags gio-2.0) \ $({pkg-config} --cflags cairo) \+ $({pkg-config} --libs cairo-gobject) \ $({pkg-config} --cflags glib-2.0) \ $({pkg-config} --cflags xmlbird) \ -o OBJECT_FILE""".format(**config.SETTINGS)@@ -214,6 +217,7 @@ def make_birdfont_import(target_binary, deps): $({pkg-config} --libs {gee}) \ $({pkg-config} --libs gio-2.0) \ $({pkg-config} --libs cairo) \+ $({pkg-config} --libs cairo-gobject) \ $({pkg-config} --libs glib-2.0) \ $({pkg-config} --libs xmlbird) \ -L./build -L./build/bin -l birdgems \@@ -269,6 +273,7 @@ def make_birdfont_autotrace(target_binary, deps): $({pkg-config} --libs {gee}) \ $({pkg-config} --libs gio-2.0) \ $({pkg-config} --libs cairo) \+ $({pkg-config} --libs cairo-gobject) \ $({pkg-config} --libs glib-2.0) \ $({pkg-config} --libs xmlbird) \ -L./build -L./build/bin -l birdgems \@@ -335,6 +340,7 @@ def make_libbirdfont(target_binary, deps): $({pkg-config} --libs gio-2.0) \ $({pkg-config} --libs fontconfig) \ $({pkg-config} --libs cairo) \+ $({pkg-config} --libs cairo-gobject) \ $({pkg-config} --libs glib-2.0) \ $({pkg-config} --libs xmlbird) \ -L./build -L./build/bin -l birdgems \@@ -469,6 +475,7 @@ def make_birdfont_test(target_binary, deps): $({pkg-config} --libs {gee}) \ $({pkg-config} --libs gio-2.0) \ $({pkg-config} --libs cairo) \+ $({pkg-config} --libs cairo-gobject) \ $({pkg-config} --libs glib-2.0) \ $({pkg-config} --libs xmlbird) \ -L./build -L./build/bin -l birdgems \@@ -122,12 +122,26 @@ if not options.nocli: install ('build/bin/birdfont-export', '/bin', 755) install ('build/bin/birdfont-import', '/bin', 755) +def is_debian():+ try:+ version = platform.version()+ print("OS Version: " + version)+ if version.find("Ubuntu") > -1:+ return True++ if version.find("Debian") > -1:+ return True+ + except:+ return False+ + return False+ #library if sys.platform == 'darwin': libdir = '/lib' elif not options.libdir:- - if platform.dist()[0] == 'Ubuntu' or platform.dist()[0] == 'Debian':+ if is_debian(): process = subprocess.Popen(['dpkg-architecture', '-qDEB_HOST_MULTIARCH'], stdout=subprocess.PIPE) out, err = process.communicate() out = out.decode('ascii')@@ -36,63 +36,83 @@ public class SearchPaths { string bundle_path = (BirdFont.bundle_path != null) ? (!) BirdFont.bundle_path : ""; resources = (is_null (resources_folder)) ? "" : resources_folder; ++ string? current_program = GLib.FileUtils.read_link ("/proc/self/exe"); ++ if (current_program != null) {+ string program = (!) current_program;+ int separator = program.last_index_of ("/");+ + if (separator > -1) {+ string folder = program.substring (0, separator);+ + f = get_file (folder + "/../" + d + "/", name);+ if (f.query_exists ()) return f; ++ f = get_file (folder + "/../", name);+ if (f.query_exists ()) return f;++ f = get_file (folder + "/../share/birdfont/", name);+ if (f.query_exists ()) return f; + }+ } f = get_file (resources + "/" + d + "/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (resources + "/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file ("resources/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (resources + "/", name + "/");- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (BirdFont.exec_path + "/" + d + "/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (BirdFont.exec_path + "/", name + "/");- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (BirdFont.exec_path + "\\" + d + "\\", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (BirdFont.exec_path + "\\", name + "\\");- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (bundle_path + "/Contents/Resources/birdfont_resources/", d + "/" + name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (bundle_path + "/Contents/Resources/birdfont_resources/", name + "/");- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file ("./" + d + "/", name);- if (likely (f.query_exists ())) return f; + if (f.query_exists ()) return f; f = get_file ("../" + d + "/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (".\\" + d + "\\", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file ("", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (d + "\\", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (@"$PREFIX/share/birdfont/" + d + "/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (@"/usr/local/share/birdfont/" + d + "/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (@"resources/linux/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; f = get_file (@"/usr/share/birdfont/" + d + "/", name);- if (likely (f.query_exists ())) return f;+ if (f.query_exists ()) return f; return f; }@@ -13,7 +13,7 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. """ -VERSION = '2.28.0'+VERSION = '2.29.0' SO_VERSION_MAJOR = '36' SO_VERSION_MINOR = '0' SO_VERSION = SO_VERSION_MAJOR + '.' + SO_VERSION_MINOR