Commit Graph

41 Commits

Author SHA1 Message Date
Jon Trulson 6c07a2ae69 linux.cf: always use bison
For some reason, whenever OSMajorVersion was >= 2 (this equates to a
2.x kernel or above), yacc would be used instead of bison.

On Ubuntu, and probably other linux systems, yacc is just a shell
wrapper around bison, so let's just use that directly.
2019-12-01 19:18:00 -07:00
Jose Rubio 0d115796c2 Added linux/aarch64 as valid target. 2019-08-19 16:55:11 +02:00
Alex Ivanov b9f352df59 define M4Cmd 2019-01-08 19:48:47 -07:00
Matthew R. Trower a94c997e8f Clean up UseInstalledX11 logic 2018-10-25 12:15:03 -06:00
chase 63269240eb linux.cf: Remove permissive flag 2018-06-24 15:56:24 -06:00
Jon Trulson c26dfea26d linux.cf: disable stripping of installed binaries
The build system should not generally strip binaries - that's up to
the packaging systems (for creating 'release' vs. 'debug' packages for
example).
2018-06-01 15:40:50 -06:00
chase 4f5e7fe5e3 Use POSIX macros for linux 2018-05-24 18:22:55 -06:00
Jon Trulson 17101b6f4c Enable TIRPC support for Linux
This is enabled by default.  To disable, add:

in the config/cf/site.def or host.def file.

You will need to have the libtirpc-dev package installed.

The benefit is that you will no longer need to run rpcbind in insecure
mode (the -i option).  There are other benefits we may be able to take
advantage of in the future, like supporting IPV6 for ToolTalk.
2018-04-12 21:00:34 -06:00
Jon Trulson 7d77cc21e0 linux.cf: Add -Wno-unused-result to C flags
There are several hundred of these and unless you intend to fix them,
they are just compiler noise.  If someone does want to go back and
redo all of these, then they can just re-enable this warning.
2018-04-11 16:25:52 -06:00
Jon Trulson 1e2e373082 dtlogin: use XDM authentication instead of MIT/DES on linux 2015-11-26 14:08:23 -07:00
Ulrich Wilkens c7781f434b Remove warnings on Linux with glibc 2.20 2015-05-09 16:23:05 -06:00
Ulrich Wilkens 38dfc9e235 Fix dtinfo search engine 2014-04-01 16:52:36 -06:00
Jon Trulson 045de2cdd5 linux.cf: with fds_bits fixes, stop using _POSIX_C_SOURCE=199309L and _XOPEN_SOURCE defines 2014-03-24 19:38:20 -06:00
Jon Trulson 9b699d3fb1 linux: build with thread safety and REENTRANT enabled.
There was a check in linux.cf for the Linux libc version that didn't
work, since these were never set anywhere.  Presumably current Xorg
imake sets these, but since we aren't using that... (yet)

As a result, the build assumed that thread-safe API's were not
supported.  Setting the default libc major version to '6' allows the
proper build to take place.  libc5 was never threadsafe and no one has
probably used it in over 10 years.

As a result, some earlier porting fixes that referenced '__fds_bits'
on linux systems had to be reverted as these are not valid in an MT
environment.  They are also not neccessary when building in such an
environment, as the normal 'fds_bits' works fine.

This patch defintely needs testing on many linux systems.
2014-03-24 17:15:40 -06:00
Jon Trulson 2f4072ee69 linux.cf: turn off writable strings warnings (write-strings)
There are about 1900 of them, if someone wants to go fix them, please
be my guest. :)
2014-03-24 16:34:58 -06:00
Ulrich Wilkens a9bf30d12b Fix cpp output on Ubuntu 13 2014-03-12 13:47:28 -06:00
Jon Trulson 9b9b3430ec linux: move dependancy handling out of linux.cf and into new lnxDep.rules file.
Include lnxDep.rules in linux.cf.
2014-03-09 17:59:18 -06:00
Jon Trulson 155fa2a4f7 linux.cf: fix typo and some formatting. 2014-03-09 14:52:43 -06:00
Jon Trulson de491a16de linux: Use installed X11 header files rather than requiring /imports/x11/include
With this patch, it is no longer neccessary to create the
/imports/x11/include/X11 symlink...

Also, remove the include of xfree86.cf from linux.cf, and define our
own DefaultCCOptions.  Setup to use only -ansi, not -pendantic.
2014-03-09 04:36:42 -06:00
Jon Trulson 4d48253234 linux depend: stop using makedepend, use gcc instead
gcc can generate dependencies, so use that instead of building and
depending on the rather delicate and archaic 'makedepend'.

This fix removes makedepend from being built or used on linux, and
instead uses gcc to generate dependency data in .depend files.

I think pretty much every platform that uses gcc should do this.  I am
not sure if other compilers (intel, clang) can do this though.
2014-03-08 23:43:17 -07:00
Jon Trulson 1d8f86a6ba Revert "Enable the use of the TIRPC library on Linux."
This reverts commit 8a8619bfa8.

More work will need to be done to use tirpc on 64bit systems.  It
works 'accidentally' on 32b systems.  The issue is that tirpc
includes *must* be used, and there is some work required to properly
support this (like proper include paths, proper definition of XDR,
etc).

So for now, we revert this until that work can be completed and tested,
otherwise 64b linux builds are likely to have problems.
2013-05-27 19:34:08 -06:00
Jon Trulson 8a8619bfa8 Enable the use of the TIRPC library on Linux.
This should avoid the need to run rpcbind in insecure mode.  You will
need to have the libtirpc-dev package, or equivalent installed.
2013-05-26 17:47:00 -06:00
Ulrich Wilkens 9b4fe61ea4 dtinfo other requirements 2012-10-15 17:59:26 -06:00
Jon Trulson cc5544354f linux.cf: use -fno-strict-aliasing, define DefaultGcc2i386Opt, use indenting to improve readability 2012-10-01 19:27:36 -06:00
Jon Trulson 591e58fe1a linux.cf: add libtirpc support. Disabled by default.
Currently on Linux, you must run rpcbind in insecure mode (-i) in
order for ttsession to register with rpcbind (the portmapper).  This
is because, on most systems, libc contains an older sun-based rpc
library embedded within it.  The sun-rpc code does not know how to
authenticate with rpcbind when run as a non-privileged user.

Using libtirpc, ttsession can register with rpcbind without requiring
it to be run in insecure mode.  You must have the libtirpc-dev, or
equivalent package installed to use it.

If you want to try this:

- install libtirpc-dev or equivalent
- if your rpcbind process is already running in insecure mode (-i
  option), remove that option and restart it.
- edit config/host.def, (create if it doesn't exist) and add:

  #define HasTIRPCLib  YES

- rebuild CDE (make World).  It's probably a good idea to remove
  /usr/dt/* beforehand to avoid contamination.

Some linux systems seem to incorporate tirpc directly into libc (as
all of the BSD's do AFAIK) so this may not be needed.

I know that at least on Ubuntu systems defining HasTIRPCLib to YES is
required in order to run rpcbind without -i.
2012-09-03 19:50:10 -06:00
Jon Trulson d2c0ceaaf6 linux.cf: add some gcc system include paths to makedepend. Shaves about 5150 more warnings off (makedepend) :)
This is on ubuntu.  You may wany to add additional -I... entries for
other linux systems, if the ones I added for i386 and x86_64 don't
help.
2012-08-31 16:31:26 -06:00
Peter Howkins 53e7adfc5f build: linux.cf, remove the space in the -isystem include of the X11 headers
this was causing build failures on the make depend step.
2012-08-31 19:07:47 +01:00
Peter Howkins 1c7c33aa71 build: on linux include the X11 and Xm headers with -isystem rather than -I,
this means the compiler treats them as system headers and does not give you
excessive warnings from them. This is used because X11 does not like the
-ansi and -pedantic warnings that CDE is compiled with.
2012-08-31 18:35:20 +01:00
William Schaub 2532f4a5ba Add support for building 32bit SPARC binaries under Linux. 2012-08-16 16:18:12 -06:00
Marc Balmer 24c0f2010c Build with debug symbols enabled. 2012-08-09 11:54:51 -06:00
Jon Trulson e47bffb106 Imake.cf/linux.cf: Add arm support.
Patch from IRC user wschaub.
2012-08-06 22:38:54 -06:00
Jon Trulson 1a03c25947 Enable PowerPC to be recognized by build.
Patch from Douglas Mencken.
2012-08-06 17:09:01 -06:00
Jon Trulson 344998b405 linux.cf: do not bother using X_LOCALE at all. We do not need it on linux. 2012-08-02 19:15:20 -06:00
Jon Trulson cdf8003f7c Remove hardcoded CCLINK's in Imakefiles when linking with C++ built libs (DtSvc).
Added proper SharedDtSvcReqs in lnxLib.tmpl and CplusplusLibC in
linux.cf.  This allows the libstdc++ dependancy to be properly
declared for libDtSvc so that it is not neccessary to hardcode 'CCLINK
= g++' in the Imakefiles of programs linking angainst libDtSvc.
2012-06-19 16:27:20 -06:00
Jon Trulson 81b0818361 imake/config changes to support more processors, including AMD64 (x86_64)
- also some rework of linux.cf
  - only allow ELF systems
  - use -pipe
  - add some more defines
  - get rid of some of the ancient (libc5/linux 1) support.  Really,
    don't expect CDE to build right on such old systems.
2012-06-18 19:50:44 -06:00
Jon Trulson 143576e81e linux.cf: remove ServerOSDefines and ServerExtraDefines 2012-06-18 18:23:39 -06:00
Jon Trulson 784c7dff56 Add -fpermissive to linux standard c++ option define in linux.cf
Remove from individual Imakefiles.

Also, remove '#if 0' block in linux.cf, and remove empty
LinuxMachineDefines. This should be working correctly.  If not, let me
know.
2012-06-18 16:27:25 -06:00
Jon Trulson c0f9270dd3 linux has supported shadow passwords forever... 2012-05-26 17:57:11 -06:00
Peter Howkins 830a3572db Do not specify linux architecture specific defines, most of these are defaults
now, and some cause issues on i386 for example.
2012-03-24 17:35:46 +00:00
Peter Howkins 6f6dbbb73b Add a default empty LinuxMachineDefines to the linux conf, makes imake (and many others compile) 2012-03-11 16:00:15 +00:00
Peter Howkins 83b6996daa Initial import of the CDE 2.1.30 sources from the Open Group. 2012-03-10 18:21:40 +00:00