From f754c72bb96d072527eefe13baa279134143d8fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Sat, 28 Dec 2013 09:55:15 +0100 Subject: [PATCH] getconf: Add recipe to build the FreeBSD getconf We provide a makefile-engine makefile as a patch since the existing makefile requires FreeBSD's buildsystem. --- sys-apps/getconf/getconf-r260000.recipe | 46 +++++ .../getconf/patches/getconf-makefile.patch | 177 ++++++++++++++++++ 2 files changed, 223 insertions(+) create mode 100644 sys-apps/getconf/getconf-r260000.recipe create mode 100644 sys-apps/getconf/patches/getconf-makefile.patch diff --git a/sys-apps/getconf/getconf-r260000.recipe b/sys-apps/getconf/getconf-r260000.recipe new file mode 100644 index 000000000..b307ae299 --- /dev/null +++ b/sys-apps/getconf/getconf-r260000.recipe @@ -0,0 +1,46 @@ +SUMMARY="Prints out values of POSIX configuration variables" +DESCRIPTION="FreeBSD getconf + + The getconf command prints values of system configuration variables. + It is a command interface to the values returned by sysconf(3), confstr(3), and pathconf(3)." +HOMEPAGE="http://www.freebsd.org/" +COPYRIGHT="2000 Massachusetts Institute of Technology" +LICENSE="MIT" +SRC_URI="svn+http://svn.freebsd.org/base/head/usr.bin/getconf#260000" +#CHECKSUM_MD5="" +REVISION="1" +ARCHITECTURES="x86_gcc2 x86 x86_64" + +PATCHES="getconf-makefile.patch" + +PROVIDES=" + getconf = $portVersion + cmd:getconf = $portVersion +" +REQUIRES=" + haiku >= $haikuVersion +" +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion +" +BUILD_PREREQUIRES=" + makefile_engine + cmd:mkdepend + cmd:gcc + cmd:make +" + +BUILD() +{ + export COPYRIGHT + export LICENSE + export PORT_VERSION=$portVersion + make -f makefile.haiku $jobArgs +} + +INSTALL() +{ + make -f makefile.haiku install INSTALL_DIR=$binDir + mkdir -p $manDir/man1 + install -m 644 getconf.1 $manDir/man1/ +} diff --git a/sys-apps/getconf/patches/getconf-makefile.patch b/sys-apps/getconf/patches/getconf-makefile.patch new file mode 100644 index 000000000..62d05bc28 --- /dev/null +++ b/sys-apps/getconf/patches/getconf-makefile.patch @@ -0,0 +1,177 @@ +From 0ad9f5b07a4d3734402efb6519a5778f9fc18b20 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= +Date: Sat, 28 Dec 2013 09:49:05 +0100 +Subject: [PATCH] Add Haiku makefile +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: François Revol +--- + makefile.haiku | 154 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 154 insertions(+) + create mode 100644 makefile.haiku + +diff --git a/makefile.haiku b/makefile.haiku +new file mode 100644 +index 0000000..ed83568 +--- /dev/null ++++ b/makefile.haiku +@@ -0,0 +1,154 @@ ++%.c: %.gperf ++ LC_ALL=C awk -f ${CURDIR}/fake-gperf.awk $< >$@ ++ ++GENSRC=confstr.c limits.c pathconf.c progenv.c sysconf.c ++ ++## BeOS Generic Makefile v2.5 ## ++ ++## Fill in this file to specify the project being created, and the referenced ++## makefile-engine will do all of the hard work for you. This handles both ++## Intel and PowerPC builds of the BeOS and Haiku. ++ ++## Application Specific Settings --------------------------------------------- ++ ++# specify the name of the binary ++NAME= getconf ++ ++# specify the type of binary ++# APP: Application ++# SHARED: Shared library or add-on ++# STATIC: Static library archive ++# DRIVER: Kernel Driver ++TYPE= APP ++ ++# if you plan to use localization features ++# specify the application MIME siganture ++APP_MIME_SIG= ++ ++# add support for new Pe and Eddie features ++# to fill in generic makefile ++ ++#%{ ++# @src->@ ++ ++# specify the source files to use ++# full paths or paths relative to the makefile can be included ++# all files, regardless of directory, will have their object ++# files created in the common object directory. ++# Note that this means this makefile will not work correctly ++# if two source files with the same name (source.c or source.cpp) ++# are included from different directories. Also note that spaces ++# in folder names do not work well with this makefile. ++SRCS= getconf.c $(GENSRC) ++ ++# specify the resource definition files to use ++# full path or a relative path to the resource file can be used. ++RDEFS= ++ ++# specify the resource files to use. ++# full path or a relative path to the resource file can be used. ++# both RDEFS and RSRCS can be defined in the same makefile. ++RSRCS= ++ ++# @<-src@ ++#%} ++ ++# end support for Pe and Eddie ++ ++# specify additional libraries to link against ++# there are two acceptable forms of library specifications ++# - if your library follows the naming pattern of: ++# libXXX.so or libXXX.a you can simply specify XXX ++# library: libbe.so entry: be ++# ++# - for version-independent linking of standard C++ libraries please add ++# $(STDCPPLIBS) instead of raw "stdc++[.r4] [supc++]" library names ++# ++# - for localization support add following libs: ++# locale localestub ++# ++# - if your library does not follow the standard library ++# naming scheme you need to specify the path to the library ++# and it's name ++# library: my_lib.a entry: my_lib.a or path/my_lib.a ++LIBS= bsd ++ ++# specify additional paths to directories following the standard ++# libXXX.so or libXXX.a naming scheme. You can specify full paths ++# or paths relative to the makefile. The paths included may not ++# be recursive, so include all of the paths where libraries can ++# be found. Directories where source files are found are ++# automatically included. ++LIBPATHS= ++ ++# additional paths to look for system headers ++# thes use the form: #include
++# source file directories are NOT auto-included here ++SYSTEM_INCLUDE_PATHS = ++ ++# additional paths to look for local headers ++# thes use the form: #include "header" ++# source file directories are automatically included ++LOCAL_INCLUDE_PATHS = ++ ++# specify the level of optimization that you desire ++# NONE, SOME, FULL ++OPTIMIZE= ++ ++# specify here the codes for languages you are going ++# to support in this application. The default "en" ++# one must be provided too. "make catkeys" will recreate only ++# locales/en.catkeys file. Use it as template for creating other ++# languages catkeys. All localization files must be placed ++# in "locales" sub-directory. ++LOCALES= ++ ++# specify any preprocessor symbols to be defined. The symbols will not ++# have their values set automatically; you must supply the value (if any) ++# to use. For example, setting DEFINES to "DEBUG=1" will cause the ++# compiler option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG" ++# would pass "-DDEBUG" on the compiler's command line. ++DEFINES= ++ ++# specify special warning levels ++# if unspecified default warnings will be used ++# NONE = supress all warnings ++# ALL = enable all warnings ++WARNINGS = ++ ++# specify whether image symbols will be created ++# so that stack crawls in the debugger are meaningful ++# if TRUE symbols will be created ++SYMBOLS = ++ ++# specify debug settings ++# if TRUE will allow application to be run from a source-level ++# debugger. Note that this will disable all optimzation. ++DEBUGGER = ++ ++# specify additional compiler flags for all files ++COMPILER_FLAGS = ++ ++# specify additional linker flags ++LINKER_FLAGS = ++ ++# specify the version of this particular item ++# (for example, -app 3 4 0 d 0 -short 340 -long "340 "`echo -n -e '\302\251'`"1999 GNU GPL") ++# This may also be specified in a resource. ++APP_VERSION = -long "$PORT_VERSION "`echo -n -e '\302\251'`"$COPYRIGHT ($LICENSE license)" ++ ++# (for TYPE == DRIVER only) Specify desired location of driver in the /dev ++# hierarchy. Used by the driverinstall rule. E.g., DRIVER_PATH = video/usb will ++# instruct the driverinstall rule to place a symlink to your driver's binary in ++# ~/add-ons/kernel/drivers/dev/video/usb, so that your driver will appear at ++# /dev/video/usb when loaded. Default is "misc". ++DRIVER_PATH = ++ ++## include the makefile-engine ++DEVEL_DIRECTORY := \ ++ $(shell findpaths -r "makefile_engine" B_FIND_PATH_DEVELOP_DIRECTORY) ++include $(DEVEL_DIRECTORY)/etc/makefile-engine ++ ++clean :: FORCE ++ rm -r $(GENSRC) ++ +-- +1.8.3.4 +