def METHOD_NAME(module):
    if module == "opendr":
        # Flag to enable building opendr-metapackage
        module = None
    if module == 'perception/object_detection_2d':
        from Cython.Build import cythonize
        import numpy
        extra_params = {
            'ext_modules':
                cythonize([join("src/opendr/perception/object_detection_2d/retinaface/algorithm/cython/*.pyx")]),
            'include_dirs': [numpy.get_include()]}
    else:
        extra_params = {}
    name, packages = get_packages(module)
    dependencies, skipped_dependencies, post_install = get_dependencies(module)
    generate_manifest(module)
    # Define class for post installation scripts
    class PostInstallScripts(install):
        def run(self):
            install.run(self)
            import subprocess
            # Install potential git and local repos during post installation
            for package in skipped_dependencies:
                if 'git' in package:
                    subprocess.call([sys.executable, '-m', 'pip', 'install', package])
                if '${OPENDR_HOME}' in package:
                    subprocess.call([sys.executable, '-m', 'pip', 'install', package.replace('${OPENDR_HOME}', '.')])
            if post_install:
                for cmd in post_install:
                    print("Running ", cmd)
                    subprocess.call(cmd.split(' '))
    setup(
        name=name,
        version=__version__,
        description=get_description(module),
        long_description=long_description,
        author=author,
        author_email=author_email,
        packages=packages,
        url=url,
        license=license,
        package_dir={"": "./src"},
        install_requires=dependencies,
        cmdclass={
            'develop': PostInstallScripts,
            'install': PostInstallScripts,
        },
        package_data={'': get_data_files(module)},
        **extra_params
    )