Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GENPATCH(1)		    General Commands Manual		   GENPATCH(1)

NAME
       genpatch	-- generate patch quickly in standard FreeBSD ports format

SYNOPSIS
       genpatch	newfile
       genpatch	oldfile	newfile

DESCRIPTION
       This utility is always called by	portfix(1), but	quite often it is use-
       ful in its own right.

       It  creates  patches using the standard FreeBSD ports format defined by
       the "make makepatch" ports utility, but there are different operational
       modes.

       If genpatch is called when the current working directory	is a subdirec-
       tory of WRKDIRPREFIX if defined or PORTSDIR if not, then	a  patch  will
       be  saved  in  the  current directory using the naming standard used by
       "make makepatch".  Note that the	utility	assumes	that it	has been  exe-
       cuted in	the WRKSRC directory, the standard location for	applying ports
       patches.

       If  genpatch  is	executed outside of WRKDIRPREFIX (or PORTSDIR),	then a
       patch will not be created.  The contents	of the patch will be  send  to
       stdout,	so  the	 user will have	to direct it to	a file manually	as de-
       sired.

       If only one argument is given, genpatch will search for	a  file	 named
       "<newfile>.intermediate"	 and  if  found, it will generated diff	output
       between it and [newfile].  If that file doesn't exist, it  will	search
       for  "<newfile>.orig"  and attempt to create diff output	between	it and
       [newfile].

ERRORS
       genpatch	will abort if no arguments or more than	2 arguments are	given.
       If only one argument ( [newfile]	) is given, then a regular file	called
       "<newfile>.orig"	 or  "<newfile>.intermediate"  must  exist   otherwise
       genpatch	will abort.  If	two arguments are given, both must be existing
       regular files.

ENVIRONMENT
       WORKTREE	   Overrides  hardcoded	 WRKDIRPREFIX  (or PORTSDIR).  This is
		   useful for ports outside of the tree	or when	 genpatch  was
		   installed  via  binary packages and WRKDIRPREFIX is defined
		   (or PORTSDIR	is non-standard)

NOTES
       1.   FreeBSD does not set WRKDIRPREFIX by default
       2.   The	default	PORTSDIR for FreeBSD  is  /usr/ports  so  on  standard
	    FreeBSD systems genpatch will generate a patch file	in the current
	    directory if executed on any subdirectory of /usr/ports.
       3.   Dragonfly  sets  WRKDIRPREFIX to /usr/obj/dports by	default, so on
	    standard  systems  patch  files  are  generated  automatically  if
	    genpatch is	executed from a	subdirectory of	/usr/obj/dports.
       4.   The	 root  directory  used for this	calculation is permanently set
	    when genpatch is built, but	it can be overridden with the WORKTREE
	    environment	variable.

SEE ALSO
       dupe(1),	portfix(1)

FreeBSD	ports 15.0		 17 May, 2015			   GENPATCH(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=genpatch&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help