SecBSD's official ports repository

This commit is contained in:
purplerain 2023-08-16 22:26:55 +00:00
commit 2c0afcbbf3
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
64331 changed files with 5339189 additions and 0 deletions

51
devel/doxygen/Makefile Normal file
View file

@ -0,0 +1,51 @@
# Memory hog, stuck for days on the same file (configoptions.cpp) during build.
# XXX check with different optimizer level? see doc/install.doc
NOT_FOR_ARCHS= m88k sh
BROKEN-alpha= .got subsegment exceeds 64K
COMMENT= source code documentation generator tool
VERSION= 1.9.6
DISTNAME= doxygen-${VERSION}.src
PKGNAME= doxygen-${VERSION}
CATEGORIES= devel textproc
HOMEPAGE= https://www.doxygen.org/
MAINTAINER= Rafael Sadowski <rsadowski@openbsd.org>
# GPLv2
PERMIT_PACKAGE= Yes
WANTLIB += ${COMPILER_LIBCXX} c iconv m xapian z
COMPILER = base-clang ports-gcc base-gcc
MASTER_SITES= https://doxygen.nl/files/
LIB_DEPENDS= converters/libiconv \
databases/xapian-core
MODULES= devel/cmake \
lang/python
MODPY_RUNDEP= No
.if ${MACHINE_ARCH} == "mips64" || ${MACHINE_ARCH} == "mips64el"
CXXFLAGS+= -mxgot
.endif
BUILD_DEPENDS+= devel/bison \
devel/git
RUN_DEPENDS+= print/ghostscript/gnu \
math/graphviz
CONFIGURE_ARGS+=-Dbuild_doc=ON \
-Dbuild_app=ON \
-Dbuild_search=ON
WRKDIST= ${WRKDIR}/doxygen-${VERSION}
.include <bsd.port.mk>

2
devel/doxygen/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (doxygen-1.9.6.src.tar.gz) = KX+LpIQmXtPr0/8/53NOs0mnfk+VyL5S7Zl39R3qSd8=
SIZE (doxygen-1.9.6.src.tar.gz) = 5293513

View file

@ -0,0 +1,104 @@
- only manual pages
- remove doxywizard.1, see devel/doxygen-gui
Index: doc/CMakeLists.txt
--- doc/CMakeLists.txt.orig
+++ doc/CMakeLists.txt
@@ -16,9 +16,6 @@ string(TIMESTAMP DATE "%d-%m-%Y")
string(TIMESTAMP YEAR "%Y")
find_package(PythonInterp REQUIRED)
-find_program(EPSTOPDF NAMES epstopdf )
-find_program(PDFLATEX NAMES pdflatex )
-find_program(MAKEINDEX NAMES makeindex )
include(GNUInstallDirs)
if (doxygen_BINARY_DIR)
@@ -104,7 +101,6 @@ set(DOC_FILES
maintainers.txt
translator.py
smile.png
- doxygen_logo.svg
)
set(DOC_FILES_IMAGES
@@ -163,9 +159,6 @@ endforeach()
configure_file(${PROJECT_SOURCE_DIR}/doc/manual.sty ${PROJECT_BINARY_DIR}/doc/manual.sty)
configure_file(${PROJECT_SOURCE_DIR}/doc/doxygen_manual.tex ${PROJECT_BINARY_DIR}/doc/doxygen_manual.tex)
configure_file(${PROJECT_SOURCE_DIR}/doc/doxygen.1 ${PROJECT_BINARY_DIR}/man/doxygen.1)
-configure_file(${PROJECT_SOURCE_DIR}/doc/doxywizard.1 ${PROJECT_BINARY_DIR}/man/doxywizard.1)
-configure_file(${PROJECT_SOURCE_DIR}/doc/doxysearch.1 ${PROJECT_BINARY_DIR}/man/doxysearch.1)
-configure_file(${PROJECT_SOURCE_DIR}/doc/doxyindexer.1 ${PROJECT_BINARY_DIR}/man/doxyindexer.1)
# doc/language.doc (see tag Doxyfile:INPUT)
add_custom_command(
@@ -185,37 +178,7 @@ add_custom_command(
)
set_source_files_properties(config.doc PROPERTIES GENERATED 1)
################################################################################
-add_custom_target(run_doxygen
- COMMENT "Generating Latex and HTML documentation."
- COMMAND ${CMAKE_COMMAND} -E env VERSION=${VERSION} ${DOXYGEN_EXECUTABLE}
- DEPENDS ${PROJECT_BINARY_DIR}/doc/language.doc ${PROJECT_BINARY_DIR}/doc/config.doc
- DEPENDS ${OUT_DOC_FILES}
- DEPENDS examples
- DEPENDS doxygen
- WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/
-)
-add_custom_target(doxygen_pdf
- COMMENT "Generating Doxygen Manual PDF."
- COMMAND ${CMAKE_COMMAND} -E remove refman.tex
- COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_BINARY_DIR}/doc/doxygen_manual.tex .
- COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_BINARY_DIR}/doc/manual.sty .
- COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_SOURCE_DIR}/doc/doxygen_logo.pdf .
- COMMAND ${PDFLATEX} -shell-escape doxygen_manual.tex
- COMMAND ${MAKEINDEX} doxygen_manual.idx
- COMMAND ${PDFLATEX} -shell-escape doxygen_manual.tex
- DEPENDS run_doxygen
- WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/latex
-)
-add_custom_target(docs
- DEPENDS ${PROJECT_BINARY_DIR}/man/doxygen.1
- ${PROJECT_BINARY_DIR}/man/doxywizard.1
- ${PROJECT_BINARY_DIR}/man/doxysearch.1
- ${PROJECT_BINARY_DIR}/man/doxyindexer.1
- doxygen_pdf
- VERBATIM
- )
-
# return status of ${HTML_HELP_COMPILER} is not correct, so we have to do a trick with an "or" statement
# output is redirected to "nul" as we are on windows no problem
if (build_doc_chm)
@@ -243,22 +206,9 @@ endif ()
################################################################################
install(FILES
"${PROJECT_BINARY_DIR}/man/doxygen.1"
- "${PROJECT_BINARY_DIR}/man/doxywizard.1"
- "${PROJECT_BINARY_DIR}/man/doxysearch.1"
- "${PROJECT_BINARY_DIR}/man/doxyindexer.1"
DESTINATION ${CMAKE_INSTALL_MANDIR}/man1
)
-install(CODE "if(NOT EXISTS \"${PROJECT_BINARY_DIR}/latex/doxygen_manual.pdf\")
- message(FATAL_ERROR \"\nTerminating:\n documentation has not been generated, \n create documentation by using the 'docs' target followed by an 'install'\n\")
-endif()"
-)
-
-install(FILES
- "${PROJECT_BINARY_DIR}/latex/doxygen_manual.pdf"
- DESTINATION "${CMAKE_INSTALL_PREFIX}/${DOC_INSTALL_DIR}"
-)
-
if (build_doc_chm)
install(CODE "if(NOT EXISTS \"${PROJECT_BINARY_DIR}/chm/doxygen_manual.chm\")
message(FATAL_ERROR \"\nTerminating:\n CHM documentation has not been generated, \n create CHM documentation by using the 'docs_chm' target followed by an 'install'\n\")
@@ -270,8 +220,3 @@ install(FILES
DESTINATION "${CMAKE_INSTALL_PREFIX}/${DOC_INSTALL_DIR}"
)
endif ()
-
-install(DIRECTORY
- "${PROJECT_BINARY_DIR}/html"
- DESTINATION "${CMAKE_INSTALL_PREFIX}/${DOC_INSTALL_DIR}"
-)

37
devel/doxygen/pkg/DESCR Normal file
View file

@ -0,0 +1,37 @@
Doxygen is a documentation system for C++, C, Java, Objective-C, IDL
(Corba and Microsoft flavors) and to some extent PHP, C# and D.
It can generate an on-line documentation browser (in HTML) and/or an
off-line reference manual (in $\mbox{\LaTeX}$ ) from a set of documented
source files. There is also support for generating output in RTF
(MS-Word), PostScript, hyperlinked PDF, compressed HTML, and Unix man
pages. The documentation is extracted directly from the sources, which
makes it much easier to keep the documentation consistent with the
source code.
You can configure doxygen to extract the code structure from
undocumented source files. This is very useful to quickly find your way
in large source distributions. You can also visualize the relations
between the various elements by means of include dependency graphs,
inheritance diagrams, and collaboration diagrams, which are all
generated automatically.
To take full advantage of doxygen's features the following additional
ports should be installed:
- print/texlive for generating LaTeX, Postscript, and PDF output.
- math/graphviz for the include dependency graphs, the graphical
inheritance graphs, and the collaboration graphs.
- print/ghostscript
Note:
When generating certain filenames (for example directory listing with
the html backend), doxygen uses an md5 sum of the source path. This
is a problem for the ports framework, as the sources location can vary
(/usr/obj/ports/..., usr/ports/.../w-..., /usr/ports/mystuff/.../w-...).
This port has been modified so that when running doxygen, the
DOXYGEN_ENCODE_PATH_STRIP environment variable can be set to a prefix
to be stripped from a path before its md5 sum is calculated. Ports
using doxygen should use "DOXYGEN_ENCODE_PATH_STRIP=${WRKSRC}".

6
devel/doxygen/pkg/PLIST Normal file
View file

@ -0,0 +1,6 @@
@pkgpath devel/doxygen,-main
@bin bin/doxyapp
@bin bin/doxygen
@bin bin/doxyindexer
@bin bin/doxysearch.cgi
@man man/man1/doxygen.1