diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-extended/tzdata/tzdata_2012d.bb | 36 |
1 files changed, 9 insertions, 27 deletions
diff --git a/meta/recipes-extended/tzdata/tzdata_2012d.bb b/meta/recipes-extended/tzdata/tzdata_2012d.bb index 9ec6715bc3..4811072b31 100644 --- a/meta/recipes-extended/tzdata/tzdata_2012d.bb +++ b/meta/recipes-extended/tzdata/tzdata_2012d.bb | |||
@@ -47,48 +47,30 @@ do_install () { | |||
47 | cp -pP "${S}/iso3166.tab" ${D}${datadir}/zoneinfo | 47 | cp -pP "${S}/iso3166.tab" ${D}${datadir}/zoneinfo |
48 | 48 | ||
49 | # Install default timezone | 49 | # Install default timezone |
50 | install -d ${D}${sysconfdir} | 50 | if [ -e ${D}${datadir}/zoneinfo/${DEFAULT_TIMEZONE} ]; then |
51 | echo ${DEFAULT_TIMEZONE} > ${D}${sysconfdir}/timezone | 51 | install -d ${D}${sysconfdir} |
52 | ln -s ${datadir}/zoneinfo/${DEFAULT_TIMEZONE} ${D}${sysconfdir}/localtime | 52 | echo ${DEFAULT_TIMEZONE} > ${D}${sysconfdir}/timezone |
53 | ln -s ${datadir}/zoneinfo/${DEFAULT_TIMEZONE} ${D}${sysconfdir}/localtime | ||
54 | else | ||
55 | bberror "DEFAULT_TIMEZONE is set to an invalid value." | ||
56 | exit 1 | ||
57 | fi | ||
53 | 58 | ||
54 | chown -R root:root ${D} | 59 | chown -R root:root ${D} |
55 | } | 60 | } |
56 | 61 | ||
57 | pkg_postinst_${PN} () { | 62 | pkg_postinst_${PN} () { |
58 | |||
59 | # code taken from Gentoo's tzdata ebuild | ||
60 | |||
61 | etc_lt="$D${sysconfdir}/localtime" | 63 | etc_lt="$D${sysconfdir}/localtime" |
62 | src="$D${sysconfdir}/timezone" | 64 | src="$D${sysconfdir}/timezone" |
63 | 65 | ||
64 | if [ -e ${src} ] ; then | 66 | if [ -e ${src} ] ; then |
65 | tz=$(sed -e 's:#.*::' -e 's:[[:space:]]*::g' -e '/^$/d' "${src}") | 67 | tz=$(sed -e 's:#.*::' -e 's:[[:space:]]*::g' -e '/^$/d' "${src}") |
66 | else | ||
67 | tz="FUBAR" | ||
68 | fi | 68 | fi |
69 | 69 | ||
70 | if [ -z ${tz} ] ; then | 70 | if [ -z ${tz} ] ; then |
71 | return 0 | 71 | return 0 |
72 | fi | 72 | fi |
73 | 73 | ||
74 | if [ ${tz} = "FUBAR" ] ; then | ||
75 | echo "You do not have TIMEZONE set in ${src}." | ||
76 | |||
77 | if [ ! -e ${etc_lt} ] ; then | ||
78 | # if /etc/localtime is a symlink somewhere, assume they | ||
79 | # know what they're doing and they're managing it themselves | ||
80 | if [ ! -L ${etc_lt} ] ; then | ||
81 | cp -f "$D${datadir}/zoneinfo/Universal" "${etc_lt}" | ||
82 | echo "Setting ${etc_lt} to Universal." | ||
83 | else | ||
84 | echo "Assuming your ${etc_lt} symlink is what you want; skipping update." | ||
85 | fi | ||
86 | else | ||
87 | echo "Skipping auto-update of ${etc_lt}." | ||
88 | fi | ||
89 | return 0 | ||
90 | fi | ||
91 | |||
92 | if [ ! -e "$D${datadir}/zoneinfo/${tz}" ] ; then | 74 | if [ ! -e "$D${datadir}/zoneinfo/${tz}" ] ; then |
93 | echo "You have an invalid TIMEZONE setting in ${src}" | 75 | echo "You have an invalid TIMEZONE setting in ${src}" |
94 | echo "Your ${etc_lt} has been reset to Universal; enjoy!" | 76 | echo "Your ${etc_lt} has been reset to Universal; enjoy!" |
@@ -97,7 +79,7 @@ pkg_postinst_${PN} () { | |||
97 | if [ -L ${etc_lt} ] ; then | 79 | if [ -L ${etc_lt} ] ; then |
98 | rm -f "${etc_lt}" | 80 | rm -f "${etc_lt}" |
99 | fi | 81 | fi |
100 | cp -f "$D${datadir}/zoneinfo/${tz}" "${etc_lt}" | 82 | ln -s "${datadir}/zoneinfo/${tz}" "${etc_lt}" |
101 | fi | 83 | fi |
102 | } | 84 | } |
103 | 85 | ||