# Template file for 'gtkd'
pkgname=gtkd
version=3.9.0
revision=11
build_style=gnu-makefile
make_build_args="LDFLAGS='-linker=bfd' DC=ldc2"
make_build_target="shared-libs shared-gstreamer shared-vte shared-peas shared-gtkdgl"
make_check_args="$make_build_args"
make_install_target="install-shared-gstreamer install-headers-gstreamer
 install-shared-gtkdgl install-headers-gtkdgl install-shared install-headers
 install-shared-peas install-headers-peas install-shared-vte
 install-headers-vte"
hostmakedepends="ldc pkg-config tar which"
makedepends="gstreamer1-devel gtksourceview-devel libpeas-devel librsvg-devel
 vte3-devel"
short_desc="D bindings for GTK+3 and related libraries"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="LGPL-3.0-or-later"
homepage="https://gtkd.org"
#changelog="https://gtkd.org/changelog.html"
distfiles="https://github.com/gtkd-developers/GtkD/archive/v${version}.tar.gz"
checksum=02a5d84b120e66011d6595f92679780f5782e8fe733c5517de1629c397a0d7d9
nocross="Uses host flags for cross compilations"

do_patch() {
	# Makefile wants to install pkgconfig in /lib by default
	vsed -e 's@$(DESTDIR)$(libdir)@$(DESTDIR)$(prefix)/$(libdir)@g' -i GNUmakefile
}

libpeasd_package() {
	short_desc+=" - peasd library"
	pkg_install() {
		vmove "usr/lib/libpeasd-3.so.*"
	}
}

libpeasd-devel_package() {
	depends="libpeasd-${version}_${revision} gtkd-devel-${version}_${revision}"
	short_desc+=" - peasd development headers"
	pkg_install() {
		vmove usr/include/d/gtkd-3/peas
		vmove usr/include/d/gtkd-3/peasc
		vmove usr/lib/libpeasd-3.so
		vmove usr/lib/pkgconfig/peasd-3.pc
	}
}

libgtkdgl_package() {
	short_desc+=" - gtkdgl library"
	pkg_install() {
		vmove "usr/lib/libgtkdgl-3.so.*"
	}
}

libgtkdgl-devel_package() {
	depends="libgtkdgl-${version}_${revision} gtkd-devel-${version}_${revision}"
	short_desc+=" - gtkdgl development headers"
	pkg_install() {
		vmove usr/include/d/gtkd-3/glgtk
		vmove usr/include/d/gtkd-3/glgdk
		vmove usr/include/d/gtkd-3/gtkglc
		vmove usr/lib/libgtkdgl-3.so
		vmove usr/lib/pkgconfig/gtkdgl-3.pc
	}
}

libvted_package() {
	short_desc+=" - vted library"
	pkg_install() {
		vmove "usr/lib/libvted-3.so.*"
	}
}

libvted-devel_package() {
	depends="libvted-${version}_${revision} gtkd-devel-${version}_${revision}"
	short_desc+=" - vted development headers"
	pkg_install() {
		vmove usr/include/d/gtkd-3/vte
		vmove usr/include/d/gtkd-3/vtec
		vmove usr/lib/libvted-3.so
		vmove usr/lib/pkgconfig/vted-3.pc
	}
}

libgstreamerd_package() {
	short_desc+=" - gstreamerd library"
	pkg_install() {
		vmove "usr/lib/libgstreamerd-3.so.*"
	}
}

libgstreamerd-devel_package() {
	depends="libgstreamerd-${version}_${revision} gtkd-devel-${version}_${revision}"
	short_desc+=" - gstreamerd development headers"
	pkg_install() {
		vmove usr/include/d/gtkd-3/gst
		vmove usr/include/d/gtkd-3/gstinterfaces
		vmove usr/include/d/gtkd-3/gstreamer
		vmove usr/include/d/gtkd-3/gstreamerc
		vmove usr/lib/libgstreamerd-3.so
		vmove usr/lib/pkgconfig/gstreamerd-3.pc
	}
}

libgtkdsv_package() {
	short_desc+=" - gtkdsv library"
	pkg_install() {
		vmove "usr/lib/libgtkdsv-3.so.*"
	}
}

libgtkdsv-devel_package() {
	depends="libgtkdsv-${version}_${revision} gtkd-devel-${version}_${revision}"
	short_desc+=" - gtkdsv development headers"
	pkg_install() {
		vmove usr/include/d/gtkd-3/gsv
		vmove usr/include/d/gtkd-3/gsvc
		vmove usr/lib/libgtkdsv-3.so
		vmove usr/lib/pkgconfig/gtkdsv-3.pc
	}
}

gtkd-devel_package() {
	short_desc+=" - gtkd development files"
	depends="gtkd-${version}_${revision}"
	pkg_install() {
		vmove usr/include/d/gtkd-3/atk
		vmove usr/include/d/gtkd-3/cairo
		vmove usr/include/d/gtkd-3/gdk
		vmove usr/include/d/gtkd-3/gdkpixbuf
		vmove usr/include/d/gtkd-3/gio
		vmove usr/include/d/gtkd-3/glib
		vmove usr/include/d/gtkd-3/gobject
		vmove usr/include/d/gtkd-3/gthread
		vmove usr/include/d/gtkd-3/gtk
		vmove usr/include/d/gtkd-3/gtkc
		vmove usr/include/d/gtkd-3/gtkd
		vmove usr/include/d/gtkd-3/pango
		vmove usr/include/d/gtkd-3/rsvg
		vmove usr/lib/libgtkd-3.so
		vmove usr/lib/pkgconfig/gtkd-3.pc
	}
}
