def symlink(source, link_name): """Creates a symbolic link pointing to source named link_name. Note: On Windows, source must exist on disk, as the implementation needs to know whether to create a "File" or a "Directory" symbolic link. """ if isWindows(): import platform_utils_win32 source = _validate_winpath(source) link_name = _validate_winpath(link_name) target = os.path.join(os.path.dirname(link_name), source) if isdir(target): platform_utils_win32.create_dirsymlink(_makelongpath(source), link_name) else: platform_utils_win32.create_filesymlink(_makelongpath(source), link_name) else: return os.symlink(source, link_name)