Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html
Copyright (c) 2002-2011, International Business Machines Corporation and others. All Rights Reserved.
The genren.pl script is used to generate source/common/unicode/urename.h header file, which is needed for renaming the ICU exported names. 

This script is intended to be used on Linux, although it should work on any platform that has Perl and nm command. Makefile may need to be updated, it's not 100% portable. 

It also does not currently work well in an out-of-source situation.

The following instructions are for Linux version.
- urename.h file should be generated after implementation is complete for a release.
- the version number for a release should be set according to the list in source/common/unicode/uvernum.h
- In this [genren] directory, run 

    "make install-header"

- urename.h will be updated in icu/source/common/unicode/urename.h  **in your original source directory**
- Eyeball the new file for errors

- Other make targets here

    clean      - cleans out intermediate files
    urename.h  -just builds ./urename.h 
