wscript
BIRDFONT = [
'Allocation.vala',
'Argument.vala',
'Font.vala',
'BackgroundTool.vala',
'BackgroundSelection.vala',
'Birdfont.vala',
'EotWriter.vala',
'Expander.vala',
'ExportTool.vala',
'FontDisplay.vala',
'CharDatabase.vala',
'Config.vala',
'Context.vala',
'CutBackgroundTool.vala',
'CutTool.vala',
'ClipTool.vala',
'DropMenu.vala',
'EditPoint.vala',
'EditPointHandle.vala',
'Glyph.vala',
'GlyphBackgroundImage.vala',
'GlyphCanvas.vala',
'GlyphCollection.vala',
'GlyphRange.vala',
'GlyphTable.vala',
'GridTool.vala',
'Icons.vala',
'Kerning.vala',
'KeyBindings.vala',
'Line.vala',
'MainWindow.vala',
'MenuAction.vala',
'MenuTab.vala',
'MergeTool.vala',
'MoveTool.vala',
'NativeWindow.vala',
'Intersection.vala',
'IntersectionList.vala',
'IOThread.vala',
'OpenFontFormatWriter.vala',
'OpenFontFormatReader.vala',
'OverView.vala',
'Path.vala',
'PenTool.vala',
'Preview.vala',
'ResizeTool.vala',
'SaveDialog.vala',
'Scrollbar.vala',
'ShrinkTool.vala',
'SpinButton.vala',
'Supplement.vala',
'Svg.vala',
'SvgFontFormatWriter.vala',
'Preferences.vala',
'Tab.vala',
'TabBar.vala',
'TestCases.vala',
'TestSupplement.vala',
'Tool.vala',
'Toolbox.vala',
'TooltipArea.vala',
'UniRange.vala',
'VersionList.vala',
'ZoomTool.vala',
]
PARAM = [
'-X -D\'GETTEXT_PACKAGE="birdfont"\' '
'--thread',
'--disable-warnings',
'--enable-experimental',
'--enable-experimental-non-null',
'--vapidir=./',
]
def build (bld):
bld.shlib (
target = 'birdfont',
param = PARAM,
packages = 'libxml-2.0',
uselib = 'CAIRO GLIB GIO PIXBUF XML',
source = BIRDFONT,
name = "libbirdfont",
)
bld (
rule = "mv src/birdfont.h ./",
depends = "libbirdfont",
name = "birdfont_h"
)
bld (
rule = 'valac -C ./src/birdfont.vapi ../src/Main.vala ../src/GtkWindow.vala -X ../build/src/libbirdfont.so -X ./birdfont.h --pkg gtk+-2.0 --pkg libxml-2.0 --pkg gdk-2.0 --pkg webkit-1.0',
name = 'main_c',
source = ['../src/Main.vala', '../src/GtkWindow.vala'],
target = '../Main.c',
depends = 'libbirdfont'
)
bld (
rule = "valac -C ./src/birdfont.vapi ../src/BirdfontExport.vala -X ../build/src/libbirdfont.so -X ./birdfont.h --pkg gtk+-2.0 --pkg libxml-2.0 --pkg gdk-2.0 --pkg webkit-1.0",
depends = 'libbirdfont',
target = '../BirdfontExport.c',
name = 'birdfont_export'
)
bld (
rule = """gcc ../build/Main.c ../build/GtkWindow.c \
-D 'GETTEXT_PACKAGE="birdfont"' \
-I ../build/ -I ../build/src -L ../build/src -l birdfont \
-o ${TGT} \
$(pkg-config --cflags --libs glib-2.0) \
$(pkg-config --cflags --libs libxml-2.0) \
$(pkg-config --cflags --libs gio-2.0) \
$(pkg-config --cflags --libs libsoup-2.4) \
$(pkg-config --cflags --libs gtk+-2.0) \
$(pkg-config --cflags --libs webkit-1.0)""",
source = ['../Main.c'],
target = 'birdfont',
depends = 'main_c'
)
bld (
rule = 'gcc ../build/BirdfontExport.c -I../build/ -L ../build/src -l birdfont -o ${TGT} \
$(pkg-config --cflags --libs glib-2.0) \
$(pkg-config --cflags --libs libxml-2.0) \
$(pkg-config --cflags --libs gio-2.0) \
$(pkg-config --cflags --libs libsoup-2.4) \
$(pkg-config --cflags --libs gtk+-2.0) \
$(pkg-config --cflags --libs webkit-1.0)',
source = ['../BirdfontExport.c'],
target = 'birdfont-export',
depends = 'birdfont_export'
)
bld.install_files('${PREFIX}/bin/', ['../build/src/birdfont'], chmod=755)
bld.install_files('${PREFIX}/bin/', ['../build/src/birdfont-export'], chmod=755)