[MacPorts] #47801: Proposal for adding more recent rpcgen (from FreeBSD2007)
#47801: Proposal for adding more recent rpcgen (from FreeBSD2007) -------------------------+-------------------------------- Reporter: pmusumeci@… | Owner: macports-tickets@… Type: request | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Keywords: rpcgen | Port: -------------------------+-------------------------------- Hi, I have been helping the maintainer of the Octave package for Instrument Control get his software building on OS-X. The major issue was that rpcgen in OS-X is an older version that does not support the '-M' thread-safe code generation option. I found that a relatively recent (but not the most recent) copy of the FreeBSD sources for Sun Microsystems' rpcgen will build as-is so I would like to ask if we can have this rpcgen available as a MacPort. Could the more recent rpcgen be added to MacPorts? Below is a small script that downloads and builds rpcgen from a 2007 era FreeBSD-current. To show the difference in use options, I have also included the help message from both rpcgen - the first is for OS-X rpcgen which mentions that it is has a SunOS 4.1 compatibility mode and the second is the more recent FreeBSD version which has the new '-M' switch and mentions FreeBSD 4.X compatibility. Thanks, Phillip Musumeci %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% # # Simply download FreeBSD-current rpcgen sources and build for OS-X # - Some octave packages require a more modern version of rpcgen. The # Sun Microsystems version of rpcgen as found in FreeBSD in 2007 will # build as-is, so we use it to replace a much earlier OS-X version. # # p.musumeci@ieee.org 21-May-2015 # SRV=http://mirror.ancl.hawaii.edu/pub/FreeBSD/FreeBSD- current/src/usr.bin/rpcgen SRC="Makefile rpc_clntout.c rpc_cout.c rpc_hout.c rpc_main.c rpc_parse.c rpc_parse.h rpc_sample.c rpc_scan.c rpc_scan.h rpc_svcout.c rpc_tblout.c rpc_util.c rpc_util.h rpcgen.1" mkdir -p sun_rpcgen cd sun_rpcgen for x in $SRC ; do echo "Downloading $x" fetch -m $SRV/$x done ######################################## mv Makefile Makefile.sun echo '# Simple build of rpcgen all: cc -O -o rpcgen *.c ' > Makefile ######################################## echo 'These files for Sun Microsystems rpcgen were downloaded from http://mirror.ancl.hawaii.edu/pub/FreeBSD/FreeBSD- current/src/usr.bin/rpcgen and used as-is to build an rpcgen on OS-X.' > README.txt ######################################## ls -l echo 'Build command: cc -O -o rpcgen *.c' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Current OS-X giotto $ /usr/bin/rpcgen usage: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen infile /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-a][-b][-C][-Dname[=value]] -i size [-I [-K seconds]] [-A][-L][-M toolkit][-N][-T] infile /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-c | -h | -l | -m | -t | -Sc | -Ss] [-o outfile] [infile] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-s nettype]* [-o outfile] [infile] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-n netid]* [-o outfile] [infile] options: -A generate svc_caller() function -a generate all files, including samples -b backward compatibility mode (generates code for SunOS 4.1) -c generate XDR routines -C ANSI C mode -Dname[=value] define a symbol (same as #define) -h generate header file -i size size at which to start generating inline code -I generate code for inetd support in server (for SunOS 4.1) -K seconds server exits after K seconds of inactivity -l generate client side stubs -L server errors will be printed to syslog -m generate server side stubs -n netid generate server code that supports named netid -N supports multiple arguments and call-by-value -o outfile name of the output file -s nettype generate server code that supports named nettype -Sc generate sample client code that uses remote procedures -Ss generate sample server code that defines remote procedures -t generate RPC dispatch table -T generate code to support RPC dispatch tables -Y path directory name to find C preprocessor (cpp) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FreeBSD from around 2007 giotto $ rpcgen usage: rpcgen infile rpcgen [-abCLNTM] [-Dname[=value]] [-i size][-I -P [-K seconds]] [-Y path] infile rpcgen [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm][-o outfile] [infile] rpcgen [-s nettype]* [-o outfile] [infile] rpcgen [-n netid]* [-o outfile] [infile] options: -a generate all files, including samples -b backward compatibility mode (generates code for FreeBSD 4.X) -c generate XDR routines -C ANSI C mode -Dname[=value] define a symbol (same as #define) -h generate header file -i size size at which to start generatinginline code -I generate code for inetd support in server -K seconds server exits after K seconds ofinactivity -l generate client side stubs -L server errors will be printed to syslog -m generate server side stubs -M generate MT-safe code -n netid generate server code that supportsnamed netid -N supports multiple arguments andcall-by-value -o outfile name of the output file -P generate code for port monitoring support in server -s nettype generate server code that supports namednettype -Sc generate sample client code that uses remoteprocedures -Ss generate sample server code that definesremote procedures -Sm generate makefile template -t generate RPC dispatch table -T generate code to support RPC dispatch tables -Y path path where cpp is found -- Ticket URL: <https://trac.macports.org/ticket/47801> MacPorts <https://www.macports.org/> Ports system for OS X
#47801: Proposal for adding more recent rpcgen (from FreeBSD2007) --------------------------+-------------------------------- Reporter: pmusumeci@… | Owner: macports-tickets@… Type: request | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: rpcgen | --------------------------+-------------------------------- Changes (by ryandesign@…): * keywords: rpcgen => * version: 2.3.3 => * port: => rpcgen Old description:
Hi,
I have been helping the maintainer of the Octave package for Instrument Control get his software building on OS-X. The major issue was that rpcgen in OS-X is an older version that does not support the '-M' thread- safe code generation option. I found that a relatively recent (but not the most recent) copy of the FreeBSD sources for Sun Microsystems' rpcgen will build as-is so I would like to ask if we can have this rpcgen available as a MacPort. Could the more recent rpcgen be added to MacPorts?
Below is a small script that downloads and builds rpcgen from a 2007 era FreeBSD-current. To show the difference in use options, I have also included the help message from both rpcgen - the first is for OS-X rpcgen which mentions that it is has a SunOS 4.1 compatibility mode and the second is the more recent FreeBSD version which has the new '-M' switch and mentions FreeBSD 4.X compatibility.
Thanks, Phillip Musumeci
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# # Simply download FreeBSD-current rpcgen sources and build for OS-X # - Some octave packages require a more modern version of rpcgen. The # Sun Microsystems version of rpcgen as found in FreeBSD in 2007 will # build as-is, so we use it to replace a much earlier OS-X version. # # p.musumeci@ieee.org 21-May-2015 #
SRV=http://mirror.ancl.hawaii.edu/pub/FreeBSD/FreeBSD- current/src/usr.bin/rpcgen
SRC="Makefile rpc_clntout.c rpc_cout.c rpc_hout.c rpc_main.c rpc_parse.c rpc_parse.h rpc_sample.c rpc_scan.c rpc_scan.h rpc_svcout.c rpc_tblout.c rpc_util.c rpc_util.h rpcgen.1"
mkdir -p sun_rpcgen cd sun_rpcgen
for x in $SRC ; do echo "Downloading $x" fetch -m $SRV/$x done
######################################## mv Makefile Makefile.sun echo '# Simple build of rpcgen
all: cc -O -o rpcgen *.c ' > Makefile
######################################## echo 'These files for Sun Microsystems rpcgen were downloaded from
http://mirror.ancl.hawaii.edu/pub/FreeBSD/FreeBSD- current/src/usr.bin/rpcgen
and used as-is to build an rpcgen on OS-X.' > README.txt
######################################## ls -l echo 'Build command: cc -O -o rpcgen *.c'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Current OS-X
giotto $ /usr/bin/rpcgen usage: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen infile /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-a][-b][-C][-Dname[=value]] -i size [-I [-K seconds]] [-A][-L][-M toolkit][-N][-T] infile /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-c | -h | -l | -m | -t | -Sc | -Ss] [-o outfile] [infile] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-s nettype]* [-o outfile] [infile] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-n netid]* [-o outfile] [infile] options: -A generate svc_caller() function -a generate all files, including samples -b backward compatibility mode (generates code for SunOS 4.1) -c generate XDR routines -C ANSI C mode -Dname[=value] define a symbol (same as #define) -h generate header file -i size size at which to start generating inline code -I generate code for inetd support in server (for SunOS 4.1) -K seconds server exits after K seconds of inactivity -l generate client side stubs -L server errors will be printed to syslog -m generate server side stubs -n netid generate server code that supports named netid -N supports multiple arguments and call-by-value -o outfile name of the output file -s nettype generate server code that supports named nettype -Sc generate sample client code that uses remote procedures -Ss generate sample server code that defines remote procedures -t generate RPC dispatch table -T generate code to support RPC dispatch tables -Y path directory name to find C preprocessor (cpp)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FreeBSD from around 2007
giotto $ rpcgen usage: rpcgen infile rpcgen [-abCLNTM] [-Dname[=value]] [-i size][-I -P [-K seconds]] [-Y path] infile rpcgen [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm][-o outfile] [infile] rpcgen [-s nettype]* [-o outfile] [infile] rpcgen [-n netid]* [-o outfile] [infile] options: -a generate all files, including samples -b backward compatibility mode (generates code for FreeBSD 4.X) -c generate XDR routines -C ANSI C mode -Dname[=value] define a symbol (same as #define) -h generate header file -i size size at which to start generatinginline code -I generate code for inetd support in server -K seconds server exits after K seconds ofinactivity -l generate client side stubs -L server errors will be printed to syslog -m generate server side stubs -M generate MT-safe code -n netid generate server code that supportsnamed netid -N supports multiple arguments andcall-by-value -o outfile name of the output file -P generate code for port monitoring support in server -s nettype generate server code that supports namednettype -Sc generate sample client code that uses remoteprocedures -Ss generate sample server code that definesremote procedures -Sm generate makefile template -t generate RPC dispatch table -T generate code to support RPC dispatch tables -Y path path where cpp is found
New description: Hi, I have been helping the maintainer of the Octave package for Instrument Control get his software building on OS-X. The major issue was that rpcgen in OS-X is an older version that does not support the '-M' thread-safe code generation option. I found that a relatively recent (but not the most recent) copy of the FreeBSD sources for Sun Microsystems' rpcgen will build as-is so I would like to ask if we can have this rpcgen available as a MacPort. Could the more recent rpcgen be added to MacPorts? Below is a small script that downloads and builds rpcgen from a 2007 era FreeBSD-current. To show the difference in use options, I have also included the help message from both rpcgen - the first is for OS-X rpcgen which mentions that it is has a SunOS 4.1 compatibility mode and the second is the more recent FreeBSD version which has the new '-M' switch and mentions FreeBSD 4.X compatibility. Thanks,\\ Phillip Musumeci {{{ # # Simply download FreeBSD-current rpcgen sources and build for OS-X # - Some octave packages require a more modern version of rpcgen. The # Sun Microsystems version of rpcgen as found in FreeBSD in 2007 will # build as-is, so we use it to replace a much earlier OS-X version. # # p.musumeci@ieee.org 21-May-2015 # SRV=http://mirror.ancl.hawaii.edu/pub/FreeBSD/FreeBSD- current/src/usr.bin/rpcgen SRC="Makefile rpc_clntout.c rpc_cout.c rpc_hout.c rpc_main.c rpc_parse.c rpc_parse.h rpc_sample.c rpc_scan.c rpc_scan.h rpc_svcout.c rpc_tblout.c rpc_util.c rpc_util.h rpcgen.1" mkdir -p sun_rpcgen cd sun_rpcgen for x in $SRC ; do echo "Downloading $x" fetch -m $SRV/$x done ######################################## mv Makefile Makefile.sun echo '# Simple build of rpcgen all: cc -O -o rpcgen *.c ' > Makefile ######################################## echo 'These files for Sun Microsystems rpcgen were downloaded from http://mirror.ancl.hawaii.edu/pub/FreeBSD/FreeBSD- current/src/usr.bin/rpcgen and used as-is to build an rpcgen on OS-X.' > README.txt ######################################## ls -l echo 'Build command: cc -O -o rpcgen *.c' }}} == Current OS-X== {{{ giotto $ /usr/bin/rpcgen usage: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen infile /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-a][-b][-C][-Dname[=value]] -i size [-I [-K seconds]] [-A][-L][-M toolkit][-N][-T] infile /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-c | -h | -l | -m | -t | -Sc | -Ss] [-o outfile] [infile] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-s nettype]* [-o outfile] [infile] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-n netid]* [-o outfile] [infile] options: -A generate svc_caller() function -a generate all files, including samples -b backward compatibility mode (generates code for SunOS 4.1) -c generate XDR routines -C ANSI C mode -Dname[=value] define a symbol (same as #define) -h generate header file -i size size at which to start generating inline code -I generate code for inetd support in server (for SunOS 4.1) -K seconds server exits after K seconds of inactivity -l generate client side stubs -L server errors will be printed to syslog -m generate server side stubs -n netid generate server code that supports named netid -N supports multiple arguments and call-by-value -o outfile name of the output file -s nettype generate server code that supports named nettype -Sc generate sample client code that uses remote procedures -Ss generate sample server code that defines remote procedures -t generate RPC dispatch table -T generate code to support RPC dispatch tables -Y path directory name to find C preprocessor (cpp) }}} == FreeBSD from around 2007 == {{{ giotto $ rpcgen usage: rpcgen infile rpcgen [-abCLNTM] [-Dname[=value]] [-i size][-I -P [-K seconds]] [-Y path] infile rpcgen [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm][-o outfile] [infile] rpcgen [-s nettype]* [-o outfile] [infile] rpcgen [-n netid]* [-o outfile] [infile] options: -a generate all files, including samples -b backward compatibility mode (generates code for FreeBSD 4.X) -c generate XDR routines -C ANSI C mode -Dname[=value] define a symbol (same as #define) -h generate header file -i size size at which to start generatinginline code -I generate code for inetd support in server -K seconds server exits after K seconds ofinactivity -l generate client side stubs -L server errors will be printed to syslog -m generate server side stubs -M generate MT-safe code -n netid generate server code that supportsnamed netid -N supports multiple arguments andcall-by-value -o outfile name of the output file -P generate code for port monitoring support in server -s nettype generate server code that supports namednettype -Sc generate sample client code that uses remoteprocedures -Ss generate sample server code that definesremote procedures -Sm generate makefile template -t generate RPC dispatch table -T generate code to support RPC dispatch tables -Y path path where cpp is found }}} -- Comment: You have to use WikiFormatting. -- Ticket URL: <https://trac.macports.org/ticket/47801#comment:1> MacPorts <https://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts