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...
170 lines
5.1 KiB
C
170 lines
5.1 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
|
|
*/
|
|
/*
|
|
* File: FileUtil.h $XConsortium: FileUtil.h /main/4 1995/10/26 15:21:50 rswiston $
|
|
* Language: C
|
|
*
|
|
* (c) Copyright 1988, Hewlett-Packard Company, all rights reserved.
|
|
*
|
|
* (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 _FileUtil_h
|
|
#define _FileUtil_h
|
|
|
|
extern int _DtCreateDirs( char *path,
|
|
int mode) ;
|
|
|
|
/******************
|
|
*
|
|
* Function Name: _DtCreateDirs
|
|
*
|
|
* Description:
|
|
*
|
|
* This function is passed a directory path to create and the mode
|
|
* for the directory. It will create any of the parent directories
|
|
* on the path that do not already exist.
|
|
*
|
|
* This function may fail if any of the directories on the path already
|
|
* exist and are not writable. If some component of the path already
|
|
* exists and is not a directory, a failure will be returned.
|
|
*
|
|
* If some component of the path exists as a directory but does not have
|
|
* the specified mode, this will NOT cause a failure to be returned.
|
|
* This implies that if this function is called to create a writeable
|
|
* directory, it is possible for the function to return successfully
|
|
* but the directory may not actually be writable.
|
|
*
|
|
* Synopsis:
|
|
*
|
|
* status = _DtCreateDirs (path, mode);
|
|
*
|
|
* int status; Returns 0 on success and -1 on failure.
|
|
* char *path; The directory path to create.
|
|
* int mode; The file mode for setting any directories
|
|
* that are created.
|
|
*
|
|
******************/
|
|
|
|
|
|
extern int _DtIsOpenableDir( char *path) ;
|
|
|
|
/******************
|
|
*
|
|
* Function Name: _DtIsOpenableDir
|
|
*
|
|
* Description:
|
|
*
|
|
* This function takes a path as an argument and determines whether
|
|
* the path is a directory that can be opened. This function returns
|
|
* "1" if the path is an openable directory and "0" if it is not.
|
|
*
|
|
* The path can be in the Softbench "context" form of "host:/path/dir".
|
|
*
|
|
* Synopsis:
|
|
*
|
|
* status = _DtIsOpenableDir (cpath)
|
|
*
|
|
* int status; Returns 1 for openable directories,
|
|
* 0 otherwise.
|
|
* char *cpath; The directory name to test.
|
|
*
|
|
******************/
|
|
|
|
|
|
extern int
|
|
_DtIsOpenableDirContext(
|
|
char *path,
|
|
char **ret_path ) ;
|
|
|
|
/******************
|
|
*
|
|
* Function Name: _DtIsOpenableDirContext
|
|
*
|
|
* Description:
|
|
*
|
|
* This function takes a path as an argument and determines whether
|
|
* the path is a directory that can be opened. This function returns
|
|
* "1" if the path is an openable directory and "0" if it is not.
|
|
* In addition, if the calling function passes in another pointer,
|
|
* we will return the internal representation for the path.
|
|
*
|
|
* The path can be in the Softbench "context" form of "host:/path/dir".
|
|
*
|
|
* Synopsis:
|
|
*
|
|
* status = _DtIsOpenableDirContext (cpath, ret_ptr)
|
|
*
|
|
* int status; Returns 1 for openable directories,
|
|
* 0 otherwise.
|
|
* char *cpath; The directory name to test.
|
|
* char ** ret_ptr; Where to place internal format.
|
|
*
|
|
******************/
|
|
|
|
|
|
extern char * _DtReaddirLstat(
|
|
char *dir_name,
|
|
DIR *dirp,
|
|
struct stat *st_buf) ;
|
|
|
|
/******************
|
|
*
|
|
* Function Name: _DtReaddirLstat
|
|
*
|
|
* Description:
|
|
*
|
|
* This function reads the next entry out of a directory that has
|
|
* been opened with opendir and returns lstat information on it.
|
|
* For more information on reading a directory, see directory(3C).
|
|
* For more information on lstat information, see stat(2).
|
|
*
|
|
* This function returns a pointer to the full pathname of the directory
|
|
* entry. This memory is owned by this function and must not be
|
|
* freed. If the caller wants to keep the filename, it must make its
|
|
* own copy. When the end of the directory is encountered, NULL is
|
|
* returned.
|
|
*
|
|
* Synopsis:
|
|
*
|
|
* dir_entry = _DtReaddirLstat (dir_name, dirp, st_buf);
|
|
*
|
|
* char *dir_entry; The name of the current entry within the
|
|
* directory.
|
|
*
|
|
* char *dir_name; The full path name of the directory.
|
|
*
|
|
* DIR *dirp; A pointer to the directory [obtained from
|
|
* opendir(3C)].
|
|
*
|
|
* struct stat *st_buf; The lstat(2) information.
|
|
*
|
|
******************/
|
|
|
|
#endif /* _FileUtil_h */
|
|
|
|
/* DON'T ADD ANYTHING AFTER THIS #endif */
|