亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? configure

?? QCA的OPENSSL模塊
??
?? 第 1 頁 / 共 3 頁
字號:
			if(!first_debug)				printf(" -> %s\n", result.toLatin1().data());			else				printf(" %s\n", result.toLatin1().data());		}		if(!ok && o->required)		{			printf("\nError: need %s!\n", o->name().toLatin1().data());			return false;		}	}	return true;}QString Conf::qvar(const QString &s){	return vars.value(s);}QString Conf::expandIncludes(const QString &inc){	return QString("-I") + inc;}QString Conf::expandLibs(const QString &lib){	return QString("-L") + lib;}int Conf::doCommand(const QString &s, QByteArray *out){	debug(QString("[%1]").arg(s));	int r = qc_runcommand(s, out, debug_enabled);	debug(QString("returned: %1").arg(r));	return r;}int Conf::doCommand(const QString &prog, const QStringList &args, QByteArray *out){	QString fullcmd = prog;	QString argstr = args.join(" ");	if(!argstr.isEmpty())		fullcmd += QString(" ") + argstr;	debug(QString("[%1]").arg(fullcmd));	int r = qc_runprogram(prog, args, out, debug_enabled);	debug(QString("returned: %1").arg(r));	return r;}bool Conf::doCompileAndLink(const QString &filedata, const QStringList &incs, const QString &libs, const QString &proextra, int *retcode){	QDir tmp(".qconftemp");	if(!tmp.mkdir("atest"))	{		debug("unable to create atest dir");		return false;	}	QDir dir(tmp.filePath("atest"));	if(!dir.exists())	{		debug("atest dir does not exist");		return false;	}	QString fname = dir.filePath("atest.cpp");	QString out = "atest";	QFile f(fname);	if(!f.open(QFile::WriteOnly | QFile::Truncate))	{		debug("unable to open atest.cpp for writing");		return false;	}	if(f.write(filedata.toLatin1()) == -1)	{		debug("error writing to atest.cpp");		return false;	}	f.close();	debug(QString("Wrote atest.cpp:\n%1").arg(filedata));	QString pro = QString(		"CONFIG  += console\n"		"CONFIG  -= qt app_bundle\n"		"SOURCES += atest.cpp\n");	QString inc = incs.join(" ");	if(!inc.isEmpty())		pro += "INCLUDEPATH += " + inc + '\n';	if(!libs.isEmpty())		pro += "LIBS += " + libs + '\n';	pro += proextra;	fname = dir.filePath("atest.pro");	f.setFileName(fname);	if(!f.open(QFile::WriteOnly | QFile::Truncate))	{		debug("unable to open atest.pro for writing");		return false;	}	if(f.write(pro.toLatin1()) == -1)	{		debug("error writing to atest.pro");		return false;	}	f.close();	debug(QString("Wrote atest.pro:\n%1").arg(pro));	QString oldpath = QDir::currentPath();	QDir::setCurrent(dir.path());	bool ok = false;	int r = doCommand(qmake_path, QStringList() << "atest.pro");	if(r == 0)	{		r = doCommand(maketool, QStringList());		if(r == 0)		{			ok = true;			if(retcode)				*retcode = doCommand(QString("./") + out, QStringList());		}		r = doCommand(maketool, QStringList() << "distclean");		if(r != 0)			debug("error during atest distclean");	}	QDir::setCurrent(oldpath);	// cleanup	//dir.remove("atest.pro");	//dir.remove("atest.cpp");	//tmp.rmdir("atest");	// remove whole dir since distclean doesn't always work	qc_removedir(tmp.filePath("atest"));	if(!ok)		return false;	return true;}bool Conf::checkHeader(const QString &path, const QString &h){	QFileInfo fi(path + '/' + h);	if(fi.exists())		return true;	return false;}bool Conf::findHeader(const QString &h, const QStringList &ext, QString *inc){	if(checkHeader("/usr/include", h))	{		*inc = "";		return true;	}	QStringList dirs;	dirs += "/usr/local/include";	dirs += ext;	for(QStringList::ConstIterator it = dirs.begin(); it != dirs.end(); ++it)	{		if(checkHeader(*it, h))		{			*inc = *it;			return true;		}	}	return false;}bool Conf::checkLibrary(const QString &path, const QString &name){	QString str =		//"#include <stdio.h>\n"		"int main()\n"		"{\n"		//"    printf(\"library checker running\\\\n\");\n"		"    return 0;\n"		"}\n";	QString libs;	if(!path.isEmpty())		libs += QString("-L") + path + ' ';	libs += QString("-l") + name;	if(!doCompileAndLink(str, QStringList(), libs, QString()))		return false;	return true;}bool Conf::findLibrary(const QString &name, QString *lib){	if(checkLibrary("", name))	{		*lib = "";		return true;	}	if(checkLibrary("/usr/local/lib", name))	{		*lib = "/usr/local/lib";		return true;	}	return false;}QString Conf::findProgram(const QString &prog){	return qc_findprogram(prog);}bool Conf::findSimpleLibrary(const QString &incvar, const QString &libvar, const QString &incname, const QString &libname, QString *incpath, QString *libs){	QString inc, lib;	QString s;	s = getenv(incvar);	if(!s.isEmpty()) {		if(!checkHeader(s, incname))			return false;		inc = s;	}	else {		if(!findHeader(incname, QStringList(), &s))			return false;		inc = s;	}	s = getenv(libvar);	if(!s.isEmpty()) {		if(!checkLibrary(s, libname))			return false;		lib = s;	}	else {		if(!findLibrary(libname, &s))			return false;		lib = s;	}	QString lib_out;	if(!lib.isEmpty())		lib_out += QString("-L") + s;	lib_out += QString("-l") + libname;	*incpath = inc;	*libs = lib_out;	return true;}bool Conf::findFooConfig(const QString &path, QString *version, QStringList *incs, QString *libs, QString *otherflags){	QStringList args;	QByteArray out;	int ret;	args += "--version";	ret = doCommand(path, args, &out);	if(ret != 0)		return false;	QString version_out = QString::fromLatin1(out).trimmed();	args.clear();	args += "--libs";	ret = doCommand(path, args, &out);	if(ret != 0)		return false;	QString libs_out = QString::fromLatin1(out).trimmed();	args.clear();	args += "--cflags";	ret = doCommand(path, args, &out);	if(ret != 0)		return false;	QString cflags = QString::fromLatin1(out).trimmed();	QStringList incs_out, otherflags_out;	qc_splitcflags(cflags, &incs_out, &otherflags_out);	*version = version_out;	*incs = incs_out;	*libs = libs_out;	*otherflags = otherflags_out.join(" ");	return true;}bool Conf::findPkgConfig(const QString &name, VersionMode mode, const QString &req_version, QString *version, QStringList *incs, QString *libs, QString *otherflags){	QStringList args;	QByteArray out;	int ret;	args += name;	args += "--exists";	ret = doCommand("pkg-config", args, &out);	if(ret != 0)		return false;	if(mode != VersionAny)	{		args.clear();		args += name;		if(mode == VersionMin)			args += QString("--atleast-version=%1").arg(req_version);		else if(mode == VersionMax)			args += QString("--max-version=%1").arg(req_version);		else			args += QString("--exact-version=%1").arg(req_version);		ret = doCommand("pkg-config", args, &out);		if(ret != 0)			return false;	}	args.clear();	args += name;	args += "--modversion";	ret = doCommand("pkg-config", args, &out);	if(ret != 0)		return false;	QString version_out = QString::fromLatin1(out).trimmed();	args.clear();	args += name;	args += "--libs";	ret = doCommand("pkg-config", args, &out);	if(ret != 0)		return false;	QString libs_out = QString::fromLatin1(out).trimmed();	args.clear();	args += name;	args += "--cflags";	ret = doCommand("pkg-config", args, &out);	if(ret != 0)		return false;	QString cflags = QString::fromLatin1(out).trimmed();	QStringList incs_out, otherflags_out;	qc_splitcflags(cflags, &incs_out, &otherflags_out);	*version = version_out;	*incs = incs_out;	*libs = libs_out;	*otherflags = otherflags_out.join(" ");	return true;}void Conf::addDefine(const QString &str){	if(DEFINES.isEmpty())		DEFINES = str;	else		DEFINES += QString(" ") + str;	debug(QString("DEFINES += %1").arg(str));}void Conf::addLib(const QString &str){	if(LIBS.isEmpty())		LIBS = str;	else		LIBS += QString(" ") + str;	debug(QString("LIBS += %1").arg(str));}void Conf::addIncludePath(const QString &str){	if(INCLUDEPATH.isEmpty())		INCLUDEPATH = str;	else		INCLUDEPATH += QString(" ") + str;	debug(QString("INCLUDEPATH += %1").arg(str));}void Conf::addExtra(const QString &str){	extra += str + '\n';	debug(QString("extra += %1").arg(str));}//----------------------------------------------------------------------------// main//----------------------------------------------------------------------------#include "conf4.moc"#ifdef HAVE_MODULES# include"modules.cpp"#endifint main(){	Conf *conf = new Conf;	ConfObj *o;	o = 0;#ifdef HAVE_MODULES# include"modules_new.cpp"#endif	conf->debug_enabled = (qc_getenv("QC_VERBOSE") == "Y") ? true: false;	if(conf->debug_enabled)		printf(" -> ok\n");	else		printf("ok\n");	QString confCommand = qc_getenv("QC_COMMAND");	QString proName = qc_getenv("QC_PROFILE");	conf->qmake_path = qc_getenv("QC_QMAKE");	conf->maketool = qc_getenv("QC_MAKETOOL");	if(conf->debug_enabled)		printf("conf command: [%s]\n", qPrintable(confCommand));	QString confPath = qc_findself(confCommand);	if(confPath.isEmpty())	{		printf("Error: cannot find myself; rerun with an absolute path\n");		return 1;	}	QString srcdir = QFileInfo(confPath).absolutePath();	QString builddir = QDir::current().absolutePath();	QString proPath = QDir(srcdir).filePath(proName);	if(conf->debug_enabled)	{		printf("conf path:    [%s]\n", qPrintable(confPath));		printf("srcdir:       [%s]\n", qPrintable(srcdir));		printf("builddir:     [%s]\n", qPrintable(builddir));		printf("profile:      [%s]\n", qPrintable(proPath));		printf("qmake path:   [%s]\n", qPrintable(conf->qmake_path));		printf("make tool:    [%s]\n", qPrintable(conf->maketool));		printf("\n");	}	bool success = false;	if(conf->exec())	{		QFile f("conf.pri");		if(!f.open(QFile::WriteOnly | QFile::Truncate))		{			printf("Error writing %s\n", qPrintable(f.fileName()));			return 1;		}		QString str;		str += "# qconf\n\n";		QString var;		var = qc_getenv("PREFIX");		if(!var.isEmpty())			str += QString("PREFIX = %1\n").arg(var);		var = qc_getenv("BINDIR");		if(!var.isEmpty())			str += QString("BINDIR = %1\n").arg(var);		var = qc_getenv("INCDIR");		if(!var.isEmpty())			str += QString("INCDIR = %1\n").arg(var);		var = qc_getenv("LIBDIR");		if(!var.isEmpty())			str += QString("LIBDIR = %1\n").arg(var);		var = qc_getenv("DATADIR");		if(!var.isEmpty())			str += QString("DATADIR = %1\n").arg(var);		str += '\n';		if(qc_getenv("QC_STATIC") == "Y")			str += "CONFIG += staticlib\n";		// TODO: don't need this?		//str += "QT_PATH_PLUGINS = " + QString(qInstallPathPlugins()) + '\n';		if(!conf->DEFINES.isEmpty())			str += "DEFINES += " + conf->DEFINES + '\n';		if(!conf->INCLUDEPATH.isEmpty())			str += "INCLUDEPATH += " + conf->INCLUDEPATH + '\n';		if(!conf->LIBS.isEmpty())			str += "LIBS += " + conf->LIBS + '\n';		if(!conf->extra.isEmpty())			str += conf->extra;		str += '\n';		QByteArray cs = str.toLatin1();		f.write(cs);		f.close();		success = true;	}	QString qmake_path = conf->qmake_path;	delete conf;	if(!success)		return 1;	// run qmake on the project file	int ret = qc_runprogram(qmake_path, QStringList() << proPath, 0, true);	if(ret != 0)		return 1;	return 0;}EOTcat >$1/conf4.pro <<EOTCONFIG  += consoleCONFIG  -= app_bundleQT      -= guiTARGET   = confHEADERS += conf4.hSOURCES += conf4.cppDEFINES += HAVE_MODULESEOT}export EX_QTDIRexport QC_STATICexport QC_RELEASEexport QC_DEBUGexport QC_DEBUG_AND_RELEASEexport QC_NO_SEPARATE_DEBUG_INFOexport QC_SEPARATE_DEBUG_INFOexport QC_UNIVERSALexport QC_MAC_SDKexport QC_PLUGINS_PATHexport QC_WITH_QCAexport QC_WITH_OPENSSL_INCexport QC_WITH_OPENSSL_LIBexport QC_VERBOSErm -rf .qconftemp(	mkdir .qconftemp	gen_files .qconftemp	cd .qconftemp	$qm conf4.pro >/dev/null	$MAKE clean >/dev/null 2>&1	$MAKE >../conf.log 2>&1)if [ "$?" != "0" ]; then	rm -rf .qconftemp	if [ "$QC_VERBOSE" = "Y" ]; then		echo " -> fail"	else		echo "fail"	fi	printf "\n"	printf "Reason: There was an error compiling 'conf'.  See conf.log for details.\n"	printf "\n"	show_qt_info	if [ "$QC_VERBOSE" = "Y" ]; then		echo "conf.log:"		cat conf.log	fi	exit 1;fiQC_COMMAND=$0export QC_COMMANDQC_PROFILE=qca-ossl.proexport QC_PROFILEQC_QMAKE=$qmexport QC_QMAKEQC_MAKETOOL=$MAKEexport QC_MAKETOOL.qconftemp/confret="$?"if [ "$ret" = "1" ]; then	rm -rf .qconftemp	echo	exit 1;else	if [ "$ret" != "0" ]; then		rm -rf .qconftemp		if [ "$QC_VERBOSE" = "Y" ]; then			echo " -> fail"		else			echo "fail"		fi		echo		echo "Reason: Unexpected error launching 'conf'"		echo		exit 1;	fifirm -rf .qconftempechoecho "Good, your configure finished.  Now run $MAKE."echo

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美洲天堂一区二卡三卡四卡视频| 精品视频一区二区三区免费| 在线观看成人小视频| 一卡二卡欧美日韩| 日韩电影在线免费| 91在线视频在线| 精品日韩一区二区三区免费视频| 亚洲四区在线观看| 国内精品伊人久久久久av影院| 欧美日韩国产综合草草| 综合色中文字幕| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | av资源网一区| 久久久一区二区三区| 欧美aaa在线| 欧美日韩在线播放三区| 樱桃国产成人精品视频| a美女胸又www黄视频久久| 亚洲精品一区二区三区99| 日本成人在线看| 欧美日韩在线精品一区二区三区激情| 亚洲欧美一区二区在线观看| 国产凹凸在线观看一区二区| www亚洲一区| 开心九九激情九九欧美日韩精美视频电影 | 精品国产百合女同互慰| 天天色天天爱天天射综合| 欧美在线一二三| 一区二区理论电影在线观看| 91天堂素人约啪| 亚洲天堂中文字幕| 91成人看片片| 亚洲高清免费一级二级三级| 欧美性生交片4| 亚洲综合色区另类av| 色偷偷88欧美精品久久久| 亚洲伦理在线精品| 91久久精品一区二区二区| 亚洲一区二区三区视频在线播放 | 久久九九久久九九| 国产乱码一区二区三区| 久久综合久久久久88| 国产乱子伦一区二区三区国色天香 | 五月天丁香久久| 这里只有精品电影| 久久99精品久久久久| 国产亚洲综合av| 懂色av中文字幕一区二区三区 | 亚洲成a人在线观看| 欧美男人的天堂一二区| 久久电影国产免费久久电影| 国产日本一区二区| 成人av网在线| 一区二区三区视频在线看| 国产一区91精品张津瑜| 九色综合狠狠综合久久| 91在线观看下载| 亚洲最新在线观看| 日韩欧美激情在线| 国产精品一区二区在线观看不卡 | 欧美日韩国产影片| 久久99精品国产| 欧美专区亚洲专区| 日韩丝袜情趣美女图片| 一区二区三区四区国产精品| 欧美日韩高清在线播放| 精品一区二区三区在线视频| 国产精品乱人伦| 欧美乱妇一区二区三区不卡视频| 精品一二三四在线| 亚洲少妇中出一区| 亚洲你懂的在线视频| 欧美一区二区精品在线| jlzzjlzz国产精品久久| 蜜桃免费网站一区二区三区| 国产精品你懂的在线| 欧美三级在线视频| 成人精品电影在线观看| 蜜臀久久99精品久久久久久9| 欧美激情在线看| 日韩欧美综合一区| 色综合咪咪久久| 日韩国产一二三区| 亚洲丝袜精品丝袜在线| 2020国产精品自拍| 69堂国产成人免费视频| 91小视频在线免费看| 国产精品自拍在线| 美女精品自拍一二三四| 亚洲线精品一区二区三区| 中文字幕免费不卡在线| 日韩免费性生活视频播放| 欧美在线免费视屏| 91免费国产在线观看| 粉嫩av亚洲一区二区图片| 激情伊人五月天久久综合| 亚洲国产精品一区二区久久| 国产精品毛片无遮挡高清| 欧美zozozo| 日韩精品在线网站| 欧美手机在线视频| 在线观看av不卡| 色综合欧美在线| 色偷偷成人一区二区三区91| va亚洲va日韩不卡在线观看| 国内精品视频一区二区三区八戒| 免费av成人在线| 视频在线观看一区二区三区| 一区二区三区日韩精品视频| 中文字幕一区二区三区四区不卡| 日本一区二区三区免费乱视频| 精品88久久久久88久久久| 日韩亚洲欧美中文三级| 欧美一区二区二区| 日韩视频123| 日韩欧美激情在线| 精品乱码亚洲一区二区不卡| 亚洲自拍偷拍av| 一区二区三区中文免费| 亚洲精品高清在线| 香蕉乱码成人久久天堂爱免费| 亚洲午夜一区二区| 日韩激情av在线| 青青草国产精品97视觉盛宴| 免费成人在线观看视频| 激情成人综合网| 成人午夜激情在线| 成人a区在线观看| 色哦色哦哦色天天综合| 在线观看亚洲一区| 欧美丰满美乳xxx高潮www| 欧美一区二区三区白人| 欧美va亚洲va香蕉在线| 国产日韩欧美综合一区| 国产精品二三区| 亚洲成在人线在线播放| 免费av网站大全久久| 国产成人av电影在线观看| av一区二区三区| 在线视频一区二区三区| 日韩手机在线导航| 国产午夜精品久久久久久久| 中文字幕制服丝袜成人av| 一区二区三区精品久久久| 蜜臀久久99精品久久久画质超高清| 精东粉嫩av免费一区二区三区| 国产成人小视频| 99国产精品一区| 日韩欧美一区在线观看| 国产精品午夜在线观看| 亚洲午夜电影网| 国产一区二区三区久久久 | 欧美一区二区大片| 欧美激情一区在线| 日韩激情av在线| 91免费观看视频| 精品第一国产综合精品aⅴ| 亚洲啪啪综合av一区二区三区| 秋霞影院一区二区| 成人久久久精品乱码一区二区三区 | 成年人网站91| 91精品欧美综合在线观看最新| 国产日产欧美一区| 日本午夜精品视频在线观看| 成人aa视频在线观看| 精品国产一区二区三区不卡| 国产精品区一区二区三区| 日韩国产一二三区| 色噜噜狠狠成人中文综合| 精品伦理精品一区| 午夜精品久久久| 色婷婷久久一区二区三区麻豆| 久久精品亚洲一区二区三区浴池| 亚洲国产精品天堂| 日本韩国欧美在线| 国产精品久久久久久久久动漫| 精品一区二区免费在线观看| 欧美丝袜丝交足nylons| 国产精品国产三级国产aⅴ原创| 蜜臀av一区二区在线观看 | 99精品久久久久久| 国产日韩精品视频一区| 久久99热国产| 欧美一区国产二区| 五月天激情小说综合| 91精品1区2区| 亚洲欧美日韩国产综合在线| 国产成人免费视频网站| 久久久噜噜噜久久人人看| 久久99精品一区二区三区三区| 在线播放日韩导航| 五月婷婷激情综合网| 欧美伦理影视网| 天天色天天操综合| 欧美精品99久久久**| 一区二区三区在线观看动漫| 91免费版在线看| 亚洲精品免费视频| 欧洲av一区二区嗯嗯嗯啊| 亚洲一区二区综合|