Ok - so one of the steps in building CDE is an early phase called the includes phase (make includes). At this point, all of the public header files are exported to exports/include/Dt, DtI, ... Then, the software is built using that include dir. This of course does not work in autotools. Much of the software does things like #include <Dt/something.h>, so in order for the build to succeed, this behavior must be represented/replicated in some way. It seems the usual way of dealing with this is to place all public headers (and in some projects, ALL headers) into a toplevel include directory. We now do this for all public headers - they have been moved from wherever they were and placed in the appropriate spot in includes/ This will break the Imake 'make includes' phase unless the Imakefiles are fixed (remove the HEADERS = stuff, and the incdir defines). This has not been done at this point since in reality, once autotools works properly, there will be no need for the Imake stuff anymore, and I intend to get rid of it. This is just a warning for now - Imake builds in this tree will now fail at the 'includes' stage. This commit is only the migration. In upcoming commits, libtt will be fixed so that the hack being used before to get around this problem is removed as there will no longer be any need. And then the autotools work continues...
182 lines
4.7 KiB
C
182 lines
4.7 KiB
C
/*
|
|
* CDE - Common Desktop Environment
|
|
*
|
|
* Copyright (c) 1993-2012, The Open Group. All rights reserved.
|
|
*
|
|
* These libraries and programs are free software; you can
|
|
* redistribute them and/or modify them under the terms of the GNU
|
|
* Lesser General Public License as published by the Free Software
|
|
* Foundation; either version 2 of the License, or (at your option)
|
|
* any later version.
|
|
*
|
|
* These libraries and programs are distributed in the hope that
|
|
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
|
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
* PURPOSE. See the GNU Lesser General Public License for more
|
|
* details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with these libraries and programs; if not, write
|
|
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
|
* Floor, Boston, MA 02110-1301 USA
|
|
*/
|
|
/* $XConsortium: Dts.h /main/5 1996/03/05 13:30:59 drk $ */
|
|
/*
|
|
* (c) Copyright 1993, 1994 Hewlett-Packard Company
|
|
* (c) Copyright 1993, 1994 International Business Machines Corp.
|
|
* (c) Copyright 1993, 1994 Sun Microsystems, Inc.
|
|
* (c) Copyright 1993, 1994 Novell, Inc.
|
|
*/
|
|
|
|
#ifndef _Dt_Dts_h
|
|
#define _Dt_Dts_h
|
|
|
|
#include <sys/stat.h>
|
|
#include <X11/Intrinsic.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/*
|
|
* Constants
|
|
*/
|
|
|
|
#define DtDTS_DC_NAME "DATA_CRITERIA"
|
|
#define DtDTS_NAME_PATTERN "NAME_PATTERN"
|
|
#define DtDTS_PATH_PATTERN "PATH_PATTERN"
|
|
#define DtDTS_CONTENT "CONTENT"
|
|
#define DtDTS_MODE "MODE"
|
|
#define DtDTS_LINK_PATH "LINK_PATH"
|
|
#define DtDTS_LINK_NAME "LINK_NAME"
|
|
#define DtDTS_DATA_ATTRIBUTES_NAME "DATA_ATTRIBUTES_NAME"
|
|
|
|
#define DtDTS_DT_RECURSIVE_LINK "RECURSIVE_LINK"
|
|
#define DtDTS_DT_BROKEN_LINK "BROKEN_LINK"
|
|
#define DtDTS_DT_UNKNOWN "UNKNOWN"
|
|
|
|
#define DtDTS_DA_IS_SYNTHETIC "IS_SYNTHETIC"
|
|
#define DtDTS_DA_LABEL "LABEL"
|
|
#define DtDTS_DA_NAME "DATA_ATTRIBUTES"
|
|
#define DtDTS_DA_DESCRIPTION "DESCRIPTION"
|
|
#define DtDTS_DA_DATA_HOST "DATA_HOST"
|
|
#define DtDTS_DA_ICON "ICON"
|
|
#define DtDTS_DA_INSTANCE_ICON "INSTANCE_ICON"
|
|
#define DtDTS_DA_PROPERTIES "PROPERTIES"
|
|
#define DtDTS_DA_ACTION_LIST "ACTIONS"
|
|
#define DtDTS_DA_NAME_TEMPLATE "NAME_TEMPLATE"
|
|
#define DtDTS_DA_MODE_TEMPLATE "MODE_TEMPLATE"
|
|
#define DtDTS_DA_MOVE_TO_ACTION "MOVE_TO_ACTION"
|
|
#define DtDTS_DA_COPY_TO_ACTION "COPY_TO_ACTION"
|
|
#define DtDTS_DA_LINK_TO_ACTION "LINK_TO_ACTION"
|
|
#define DtDTS_DA_IS_TEXT "IS_TEXT"
|
|
#define DtDTS_DA_MEDIA "MEDIA"
|
|
#define DtDTS_DA_MIME_TYPE "MIME_TYPE"
|
|
#define DtDTS_DA_MIME_TO_MEDIA_FILTER "MIME_TO_MEDIA_FILTER"
|
|
#define DtDTS_DA_MEDIA_TO_MIME_FILTER "MEDIA_TO_MIME_FILTER"
|
|
#define DtDTS_DA_X400_TYPE "X400_TYPE"
|
|
#define DtDTS_DA_X400_TO_MEDIA_FILTER "X400_TO_MEDIA_FILTER"
|
|
#define DtDTS_DA_MEDIA_TO_X400_FILTER "MEDIA_TO_X400_FILTER"
|
|
#define DtDTS_DA_IS_ACTION "IS_ACTION"
|
|
#define DtDTS_DA_IS_EXECUTABLE "IS_EXECUTABLE"
|
|
|
|
#define DtDTS_DT_DIR ".DtDirDataType"
|
|
|
|
|
|
/*
|
|
* Types
|
|
*/
|
|
|
|
typedef struct _DtDtsAttribute
|
|
{
|
|
char *name;
|
|
char *value;
|
|
} DtDtsAttribute;
|
|
|
|
|
|
/*
|
|
* Functions
|
|
*/
|
|
|
|
extern void DtDtsLoadDataTypes(void);
|
|
extern void DtDtsRelease(void);
|
|
|
|
extern char *DtDtsDataToDataType(
|
|
const char *filepath,
|
|
const void *buffer,
|
|
const int size,
|
|
const struct stat *stat_buff,
|
|
const char *link_name,
|
|
const struct stat *link_stat_buff,
|
|
const char *opt_name);
|
|
|
|
extern char *DtDtsFileToDataType(
|
|
const char *filepath);
|
|
|
|
extern char *DtDtsFileToAttributeValue(
|
|
const char *filepath,
|
|
const char *attr);
|
|
|
|
extern DtDtsAttribute **DtDtsFileToAttributeList(
|
|
const char *filepath);
|
|
|
|
extern char *DtDtsBufferToDataType(
|
|
const void *buffer,
|
|
const int size,
|
|
const char *opt_name);
|
|
|
|
extern char *DtDtsBufferToAttributeValue(
|
|
const void *buffer,
|
|
const int size,
|
|
const char *attr,
|
|
const char *opt_name);
|
|
|
|
extern DtDtsAttribute **DtDtsBufferToAttributeList(
|
|
const void *buffer,
|
|
const int size,
|
|
const char *opt_name);
|
|
|
|
extern char *DtDtsDataTypeToAttributeValue(
|
|
const char *datatype,
|
|
const char *attr,
|
|
const char *opt_name);
|
|
|
|
extern DtDtsAttribute **DtDtsDataTypeToAttributeList(
|
|
const char *datatype,
|
|
const char *opt_name);
|
|
|
|
extern void DtDtsFreeDataTypeNames(
|
|
char **namelist);
|
|
|
|
extern void DtDtsFreeAttributeList(
|
|
DtDtsAttribute **attr_list);
|
|
|
|
extern void DtDtsFreeAttributeValue(
|
|
char *attr_value);
|
|
|
|
extern void DtDtsFreeDataType(
|
|
char *datatype);
|
|
|
|
extern char **DtDtsDataTypeNames(void);
|
|
|
|
extern char **DtDtsFindAttribute(
|
|
const char *name,
|
|
const char *value);
|
|
|
|
extern char *DtDtsSetDataType(
|
|
const char *filepath,
|
|
const char *datatype,
|
|
const int override);
|
|
|
|
extern int DtDtsDataTypeIsAction(
|
|
const char *datatype);
|
|
|
|
extern Boolean DtDtsIsTrue(
|
|
const char *str);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* _Dt_Dts_h */
|