mirror of
https://git.yoctoproject.org/poky
synced 2026-05-24 05:29:18 +02:00
As stated in our top level license files, the license is MIT unless otherwise stated. Add SPDX identifers accordingly. Replace older license statementa with the standardised syntax. Also drop "All Rights Reserved" expression as it isn't used now, doesn't mean anything and is confusing. (From OE-Core rev: 081a391fe09a21265881e39a2a496e4e10b4f80b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
78 lines
2.7 KiB
Plaintext
78 lines
2.7 KiB
Plaintext
#
|
|
# Copyright OpenEmbedded Contributors
|
|
#
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
DEPENDS += "gconf"
|
|
PACKAGE_WRITE_DEPS += "gconf-native"
|
|
|
|
# These are for when gconftool is used natively and the prefix isn't necessarily
|
|
# the sysroot. TODO: replicate the postinst logic for -native packages going
|
|
# into sysroot as they won't be running their own install-time schema
|
|
# registration (disabled below) nor the postinst script (as they don't happen).
|
|
export GCONF_SCHEMA_INSTALL_SOURCE = "xml:merged:${STAGING_DIR_NATIVE}${sysconfdir}/gconf/gconf.xml.defaults"
|
|
export GCONF_BACKEND_DIR = "${STAGING_LIBDIR_NATIVE}/GConf/2"
|
|
|
|
# Disable install-time schema registration as we're a packaging system so this
|
|
# happens in the postinst script, not at install time. Set both the configure
|
|
# script option and the traditional envionment variable just to make sure.
|
|
EXTRA_OECONF += "--disable-schemas-install"
|
|
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL = "1"
|
|
|
|
gconf_postinst() {
|
|
if [ "x$D" != "x" ]; then
|
|
export GCONF_CONFIG_SOURCE="xml::$D${sysconfdir}/gconf/gconf.xml.defaults"
|
|
else
|
|
export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
|
|
fi
|
|
|
|
SCHEMA_LOCATION=$D/etc/gconf/schemas
|
|
for SCHEMA in ${SCHEMA_FILES}; do
|
|
if [ -e $SCHEMA_LOCATION/$SCHEMA ]; then
|
|
HOME=$D/root gconftool-2 \
|
|
--makefile-install-rule $SCHEMA_LOCATION/$SCHEMA > /dev/null
|
|
fi
|
|
done
|
|
}
|
|
|
|
gconf_prerm() {
|
|
SCHEMA_LOCATION=/etc/gconf/schemas
|
|
for SCHEMA in ${SCHEMA_FILES}; do
|
|
if [ -e $SCHEMA_LOCATION/$SCHEMA ]; then
|
|
HOME=/root GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` \
|
|
gconftool-2 \
|
|
--makefile-uninstall-rule $SCHEMA_LOCATION/$SCHEMA > /dev/null
|
|
fi
|
|
done
|
|
}
|
|
|
|
python populate_packages:append () {
|
|
import re
|
|
packages = d.getVar('PACKAGES').split()
|
|
pkgdest = d.getVar('PKGDEST')
|
|
|
|
for pkg in packages:
|
|
schema_dir = '%s/%s/etc/gconf/schemas' % (pkgdest, pkg)
|
|
schemas = []
|
|
schema_re = re.compile(r".*\.schemas$")
|
|
if os.path.exists(schema_dir):
|
|
for f in os.listdir(schema_dir):
|
|
if schema_re.match(f):
|
|
schemas.append(f)
|
|
if schemas != []:
|
|
bb.note("adding gconf postinst and prerm scripts to %s" % pkg)
|
|
d.setVar('SCHEMA_FILES', " ".join(schemas))
|
|
postinst = d.getVar('pkg_postinst:%s' % pkg)
|
|
if not postinst:
|
|
postinst = '#!/bin/sh\n'
|
|
postinst += d.getVar('gconf_postinst')
|
|
d.setVar('pkg_postinst:%s' % pkg, postinst)
|
|
prerm = d.getVar('pkg_prerm:%s' % pkg)
|
|
if not prerm:
|
|
prerm = '#!/bin/sh\n'
|
|
prerm += d.getVar('gconf_prerm')
|
|
d.setVar('pkg_prerm:%s' % pkg, prerm)
|
|
d.appendVar("RDEPENDS:%s" % pkg, ' ' + d.getVar('MLPREFIX', False) + 'gconf')
|
|
}
|