I got this excerpt from "iSeries WebSphereR Development Studio ILE C/C++
Programmer's Guide Version 5" PDF.
Reading the excerpt, it seems that it's definitely possible by specifying
#define on the appropriate macros in the program source.

<snip>

Enabling Integrated File System Stream I/O

You can enable ILE C/C++ stream I/O for files up to two gigabytes in size by
specifying the *IFSIO option on the system interface keyword (SYSIFCOPT) on
the Create Module or Create Bound Program command prompt. For example:
CRTCMOD MODULE(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFSIO)
CRTBNDC PGM(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFSIO)

Using Stream I/O with Large Files 

The 64-bit version of the Integrated File System interface lets you use ILE
C/C++ Stream I/O with files greater than two gigabytes in size. Use any of
the methods listed below to enable this interface.

* Specify the *IFS64IO option with the SYSIFCOPT keyword on the Create
Module or Create Bound Program command prompt. When this option is
specified, the compiler defines the __IFS64_IO__ macro, which in turn causes
the _LARGE_FILES and _LARGE_FILE_API macros to be defined in the
IBM-supplied header files. For example:
CRTCPPMOD MODULE(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFS64IO)

* Define the _LARGE_FILES macro in the program source. Alternately, specify
DEFINE('_LARGE_FILES') on a Create Module or Create Bound Program
command line. Integrated File System APIs and relevant data types are
automatically mapped or redefined to their 64-bit Integrated File System
counterparts. For example:
CRTCPPMOD MODULE(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFSIO)
DEFINE('_LARGE_FILES')

* Define the _LARGE_FILE_API macro in the program source. Alternately,
specify DEFINE('_LARGE_FILE_API') on a Create Module or Create Bound Program
command line. This makes 64-bit Integrated File System APIs and
corresponding data types visible, but applications must explicitly specify
which Integrated File System APIs (regular or 64-bit) to use. For example:
CRTCMOD MODULE(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFSIO)
DEFINE('_LARGE_FILE_API')

Notes on Usage

* The __IFS64_IO__, _LARGE_FILES, and _LARGE_FILE_API macros are not
mutually exclusive. For example, you might specify SYSIFCOPT(*IFS64IO) on
the command line, and define either or both of the _LARGE_FILES and
_LARGE_FILE_API macros in your program source.

</snip>

-----Original Message-----
From: c400-l-bounces+ebudimlic=centerfieldtechnology.com@xxxxxxxxxxxx
[mailto:c400-l-bounces+ebudimlic=centerfieldtechnology.com@xxxxxxxxxxxx] On
Behalf Of Chris Wolcott
Sent: Wednesday, October 13, 2004 12:05 PM
To: c400-l@xxxxxxxxxxxx
Subject: [C400-L] Default compiler setting in source

In RPG you can set compile options in 'H' specs, like BNDDIR, DFTACTGRP,
etc.  Can I do that with C?  (I'd like to set SYSIFCOPT(*IFS64IO), but
am not sure if/how defining the __IFS64_IO__ 'macro' would do it.  (I'd
also like to set default BNDDIR and ACTGRP setting if possible.)

_______________________________________________
This is the C programming iSeries / AS400 (C400-L) mailing list
To post a message email: C400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/c400-l
or email: C400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/c400-l.






This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2019 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].