#!/usr/bin/python3

# update-errno-constants -- update Lintian data about errno constants
#
# Copyright © 2013 Jakub Wilk
#
# This program is free software.  It is distributed under the terms of the GNU
# General Public License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
# more details.
#
# You should have received a copy of the GNU General Public License along with
# this program.  If not, you can find it on the World Wide Web at
# http://www.gnu.org/copyleft/gpl.html, or write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.

import datetime
import errno
import os

import misc

header = '''\
# This file contains most common errno constants.
# It was automatically generated by private/update-errno-constants.
#
# Last update: {today}

'''

def main():
    os.chdir(misc.root)
    path = 'data/errno-constants'
    with open(path, 'wt', encoding='ASCII') as file:
        file.write(header.format(
            today=datetime.date.today(),
        ))
        for n in range(1, 41):
            print('{n} {code}'.format(n=n, code=errno.errorcode[n]), file=file)

if __name__ == '__main__':
    main()

# Local Variables:
# indent-tabs-mode: nil
# End:
# vim: syntax=python sw=4 sts=4 sr et
