b71166c6 | 2015-06-14 13:30:17 | Slávek Banko |
Fix openpty detection with libutil.h Signed-off-by: Slávek Banko <slavek.banko@...> (cherry picked from commit e75569be1b7bf138685d0e4941daf111e6f51ba3) |
||
M CMakeLists.txt |
||
diff --git a/CMakeLists.txt b/CMakeLists.txt index ca577fe..55f61c8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -472,20 +472,16 @@ set( CMAKE_REQUIRED_LIBRARIES util ) if( HAVE_PTY_H ) - check_c_source_runs(" - #include <pty.h> - int main(int argc, char* argv) { - int master_fd, slave_fd; - int result; - result = openpty(&master_fd, &slave_fd, 0, 0, 0); - return 0; - }" - HAVE_OPENPTY - ) + set( USE_OPENPTY_H pty.h ) elseif( HAVE_UTIL_H ) + set( USE_OPENPTY_H util.h ) +elseif( HAVE_LIBUTIL_H ) + set( USE_OPENPTY_H libutil.h ) +endif( ) +if( USE_OPENPTY_H ) check_c_source_runs(" - #include <util.h> - int main(int argc, char* argv) { + #include <${USE_OPENPTY_H}> + int main(int argc, char* argv[]) { int master_fd, slave_fd; int result; result = openpty(&master_fd, &slave_fd, 0, 0, 0); |
||
d8091396 | 2015-06-14 13:30:24 | Slávek Banko |
Fix several issues on freebsd Signed-off-by: Slávek Banko <slavek.banko@...> (cherry picked from commit e469e42c76000b70aebaf838f5a3c4ded184b0e3) |
||
M tdecore/kpty.cpp M tdeprint/cups/cupsdconf2/cupsddialog.cpp M tdeprint/cups/kmcupsmanager.cpp M tdeui/ksconfig.cpp |
||
diff --git a/tdecore/kpty.cpp b/tdecore/kpty.cpp index 727166d..42abd1a 100644 --- a/tdecore/kpty.cpp +++ b/tdecore/kpty.cpp @@ -68,10 +68,13 @@ #include <unistd.h> #include <grp.h> -#if defined(HAVE_LIBUTIL_H) && (!defined(__FreeBSD__) || __FreeBSD_version < 900007) +#if defined(HAVE_LIBUTIL_H) # include <libutil.h> -# define USE_LOGIN -#elif defined(HAVE_UTIL_H) +# if (!defined(__FreeBSD__) || __FreeBSD_version < 900007) +# define USE_LOGIN +# endif +#endif +#if defined(HAVE_UTIL_H) # include <util.h> # define USE_LOGIN #endif @@ -305,7 +308,7 @@ if (d->masterFd >= 0) return true; -#if defined(__OpenBSD__) +#if defined(__OpenBSD__) || defined(__FreeBSD__) char cpty[16]; if (openpty(&d->masterFd, &d->slaveFd, cpty, NULL, &d->winSize) == 0) { @@ -580,7 +583,7 @@ // private bool KPty::chownpty(bool grant) { -#if !defined(__OpenBSD__) +#if !defined(__OpenBSD__) && !defined(__FreeBSD__) TDEProcess proc; proc << locate("exe", BASE_CHOWN) << (grant?"--grant":"--revoke") << TQString::number(d->masterFd); return proc.start(TDEProcess::Block) && proc.normalExit() && !proc.exitStatus(); diff --git a/tdeprint/cups/cupsdconf2/cupsddialog.cpp b/tdeprint/cups/cupsdconf2/cupsddialog.cpp index 1800aaa..066d509 100644 --- a/tdeprint/cups/cupsdconf2/cupsddialog.cpp +++ b/tdeprint/cups/cupsdconf2/cupsddialog.cpp @@ -71,7 +71,7 @@ int getServerPid() { -#if defined(__OpenBSD__) +#if defined(__OpenBSD__) || defined(__FreeBSD__) TQProcess *proc = new TQProcess(); proc->addArgument("pgrep"); proc->addArgument("cupsd"); diff --git a/tdeprint/cups/kmcupsmanager.cpp b/tdeprint/cups/kmcupsmanager.cpp index 5271dcd..ee1c627 100644 --- a/tdeprint/cups/kmcupsmanager.cpp +++ b/tdeprint/cups/kmcupsmanager.cpp @@ -102,7 +102,7 @@ { TQString d = cupsInstallDir(); if (d.isEmpty()) { -#ifdef __OpenBSD__ +#if defined(__OpenBSD__) || defined(__FreeBSD__) d = "/usr/local"; #else d = "/usr"; @@ -110,7 +110,7 @@ } d.append("/share/cups/model"); // raw foomatic support -#ifdef __OpenBSD__ +#if defined(__OpenBSD__) || defined(__FreeBSD__) d.append(":/usr/local/share/foomatic/db/source"); #else d.append(":/usr/share/foomatic/db/source"); @@ -640,7 +640,7 @@ { TQStringList comps = TQStringList::split('/', drname, false); TQString tmpFile = locateLocal("tmp", "foomatic_" + kapp->randomString(8)); -#ifdef __OpenBSD__ +#if defined(__OpenBSD__) || defined(__FreeBSD__) TQString PATH = getenv("PATH") + TQString::fromLatin1(":/usr/local/bin:/usr/sbin:/usr/local/sbin:/opt/sbin:/opt/local/sbin"); #else TQString PATH = getenv("PATH") + TQString::fromLatin1(":/usr/sbin:/usr/local/sbin:/opt/sbin:/opt/local/sbin"); @@ -959,7 +959,7 @@ { TQString path = cupsInstallDir(); if (path.isEmpty()) { -#ifdef __OpenBSD__ +#if defined(__OpenBSD__) || defined(__FreeBSD__) path = "/usr/local/share/cups"; #else path = "/usr/share/cups"; diff --git a/tdeui/ksconfig.cpp b/tdeui/ksconfig.cpp index ddae27e..2348829 100644 --- a/tdeui/ksconfig.cpp +++ b/tdeui/ksconfig.cpp @@ -188,7 +188,7 @@ setDictionary ( kc->readEntry("KSpell_Dictionary") ); setDictFromList ( kc->readNumEntry("KSpell_DictFromList", false) ); setEncoding ( kc->readNumEntry ("KSpell_Encoding", KS_E_UTF8) ); -#ifdef __OpenBSD__ +#if defined(__OpenBSD__) || defined(__FreeBSD__) setClient ( kc->readNumEntry ("KSpell_Client", KS_CLIENT_ASPELL) ); #else setClient ( kc->readNumEntry ("KSpell_Client", KS_CLIENT_ISPELL) ); |