Doxygen \command does not work, but #command does - doxygen

For example, the following works:
/** #brief Some info
#todo A todo task
#author Me
*/
But this does not:
/** \brief Some info
\todo A todo task
\author Me
*/
Am I missing any Doxyfile config? Thank you!

It seems that, at the end, it was just a matter of Doxygen versions, as I was using a Doxyfile version 1.7.2 and my Doxygen version is 1.8.6. After updating the doxyfile to my Doxygen version it worked.

Related

autoheader creates VERSION macro conflicting to other variable defined in other header file

My configure.ac file has line as below
AC_INIT([myApp], [1.2.3], [dev#company.com])
then autoheader/configure will create config.in in which we will have 2 macros as below,
/* Define to the version of this package. */
#define PACKAGE_VERSION "1.2.3"
/* Version number of package */
#define VERSION "1.2.3"
I also need build sqlite in the same project and sqlite header file also defined variable VERSION, then I got error like below
../../config.h:117:17: error: expected unqualified-id before string constant
#define VERSION "1.2.3"
^ ../../SQLiteCpp/include/SQLiteCpp/Database.h:35:21:note: in expansion of macro ‘VERSION’
extern const char* VERSION; ///< SQLITE_VERSION string from the sqlite3.h used at compile time
I have to manually modify config.in to comment out VERSION macro every time to let build continue. My questions are:
Why 2 macros created in config.h, PACKAGE_VERSION and VERSION looks the same, what is the difference?
How to resolve this VERSION macro/variable conflicting issue?
Thanks
Why both VERSION and PACKAGE_VERSION? Probably backwards compatibility.
How to avoid defining VERSION? The AM_INIT_AUTOMAKE documentation in the Automake info page ends with a paragraph dealing exactly with how to avoid PACKAGE and VERSION being AC_DEFINEd:
AM_INIT_AUTOMAKE([... no-define ...])

TYPO3 #dontverifyrequesthash

In one of our extensions we have this snippet:
/**
* action main
*
* #return void
* #dontverifyrequesthash
*/
TYPO3 Version 8 with PHP 7.1 works.
TYPO3 Version 9 with PHP 7.2 we get this error:
[Semantical Error] The annotation "#dontverifyrequesthash" in method X\Y\Controller\Z::mainAction() was never imported. Did you maybe forget to add a "use" statement for this annotation?
can someone help please?
The annotation #dontverifyrequesthash died before TYPO3 version 6.2, so you can remove it.

Error when compiling custom OpenDaylight API

I am trying to create a custom API based on an API tutorial on https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL:Startup_Project_Archetype
Tools: OpenDaylight Lithium, Eclipse, Maven 3.3.9
I am able to compile the folder in api but not in impl (FlowImpl.java).
This is the error message:
[INFO] Starting audit...
/home/shaoxu/Desktop/distribution-karaf-0.3.3-Lithium-SR3/flow/impl/src/main/java/org/opendaylight/flow/impl/FlowImpl.java:1: Line does not match expected header line of '^/[*]+$'.
Audit done.
[INFO] There is 1 error reported by Checkstyle 6.2 with check-license.xml ruleset.
[ERROR] src/main/java/org/opendaylight/flow/impl/FlowImpl.java[1] (header) RegexpHeader: Line does not match expected header line of '^/[*]+$'.
There is no error message in Eclipse.
This is the source code:
package org.opendaylight.flow.impl;
import java.util.concurrent.Future;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.flow.rev150105.FlowService;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.flow.rev150105.FlowPathInput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.flow.rev150105.FlowPathOutput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.flow.rev150105.FlowPathOutputBuilder;
import org.opendaylight.yangtools.yang.common.RpcResult;
import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
public class FlowImpl implements FlowService {
#Override
public Future<RpcResult<FlowPathOutput>> flowPath(FlowPathInput input) {
FlowPathOutputBuilder flowBuilder = new FlowPathOutputBuilder();
flowBuilder.setPath(input.getNodes());
return RpcResultBuilder.success(flowBuilder.build()).buildFuture();
}
}
What is the error?
The error you're getting is caused by an enforced format for a copyright/license header at the start of every file in OpenDaylight:
/*
* Copyright (c) 2016 ... and others. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
If you used the archetype, this header should have been generated for you. There are two ways of fixing the problem: either add the license header as above (if you're happy with the license), or disable the license check — if you want to do the latter, edit your question and add the POM you're using for impl so I can explain how to go about it.
You mention you're using Lithium, I'd strongly recommend switching to Beryllium or even Boron for new development. The wiki pages are currently mostly up-to-date for Beryllium.
In my Beryllium, I usually skip checkstyle tests when running my build. Add -Dcheckstyle.skip=true parameter to your command to do the maven build.

The REST Interface feature is not available in this Bugzilla

I have installed Bugzilla 5.0.2 and tried accessing it through REST Api but I'm not able to access it.
I'm getting the following message.
"The REST Interface feature is not available in this Bugzilla."
I tried to access
http://bugzillaserver/bugzilla/rest.cgi from the browser
But that also displays the same message.
The issue was with optional perl modules.
Installed optional perl modules, now it is working fine.
The main module that cures this problem is JSON::RPC (any) for the JSON-RPC interface
Same issue solved by
all SOAP,RCP related perl modules
and
ppm install Test-Taint
Perl version use ActivePerl-5.24.3.2404
I already had JSON::RPC installed; the missing bit was Test::Taint, installed with cpanm Test::Taint.
It is also reported by checksetup.pl in this box:
***********************************************************************
* OPTIONAL MODULES *
***********************************************************************
* Certain Perl modules are not required by Bugzilla, but by *
* installing the latest version you gain access to additional *
* features. *
* *
* The optional modules you do not have installed are listed below, *
* with the name of the feature they enable. Below that table are the *
* commands to install each module. *
***********************************************************************
* MODULE NAME * ENABLES FEATURE(S) *
***********************************************************************
* ... *
* Test-Taint * JSON-RPC Interface, XML-RPC Interface, REST Interface *
***********************************************************************

NetBeans not parsing CMake defines

I'm using NetBeans to work on an existing CMake project.
In CMakeLists.txt there is
set(DEFINES ${SRC}/defines.cmake)
So when in source you have
#ifdef MY_OPT
//do stuff
#endif
these are blanked out in NetBeans, because there is never a
#define MY_OPT
Instead there is a
-DMY_OPT
in defines.cmake.
How can I tell NetBeans to look into this file (and others)?
set(DEFINES ${SRC}/defines.cmake)
What is this line intended to do? If your defines.cmake contains some preprocessor settings, you better use include():
include("${SRC}/defines.cmake")
Is it possible that this defines.cmake file actually sets the defines through the pre-processor instead?
Yes, this is where add_definitions() will help:
add_definitions(-DMY_OPT -DANOTHER_ONE)
To sum it up:
CMakeLists.txt
# ...
include("${SRC}/defines.cmake")
# ...
defines.cmake
# Add defines
add_definitions(-DMY_OPT)
Somewhere in your source:
#ifdef MY_OPT
/* This is used now */
#else
/* MY_OPT is not defined - shouldn't happen now */
#endif
Btw., you may also have a look at configure_file().