1#!/usr/bin/env perl 2#*************************************************************************** 3# _ _ ____ _ 4# Project ___| | | | _ \| | 5# / __| | | | |_) | | 6# | (__| |_| | _ <| |___ 7# \___|\___/|_| \_\_____| 8# 9# Copyright (C) 2004 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al. 10# 11# This software is licensed as described in the file COPYING, which 12# you should have received as part of this distribution. The terms 13# are also available at https://curl.se/docs/copyright.html. 14# 15# You may opt to use, copy, modify, merge, publish, distribute and/or sell 16# copies of the Software, and permit persons to whom the Software is 17# furnished to do so, under the terms of the COPYING file. 18# 19# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 20# KIND, either express or implied. 21# 22########################################################################### 23 24# pass files as argument(s) 25 26my $docroot="https://curl.se/libcurl/c"; 27 28for $f (@ARGV) { 29 open(NEW, ">$f.new"); 30 open(F, "<$f"); 31 while(<F>) { 32 my $l = $_; 33 if($l =~ /\/* $docroot/) { 34 # just ignore preciously added refs 35 } 36 elsif($l =~ /^( *).*curl_easy_setopt\([^,]*, *([^ ,]*) *,/) { 37 my ($prefix, $anc) = ($1, $2); 38 $anc =~ s/_//g; 39 print NEW "$prefix/* $docroot/curl_easy_setopt.html#$anc */\n"; 40 print NEW $l; 41 } 42 elsif($l =~ /^( *).*(curl_([^\(]*))\(/) { 43 my ($prefix, $func) = ($1, $2); 44 print NEW "$prefix/* $docroot/$func.html */\n"; 45 print NEW $l; 46 } 47 else { 48 print NEW $l; 49 } 50 } 51 close(F); 52 close(NEW); 53 54 system("mv $f $f.org"); 55 system("mv $f.new $f"); 56} 57