Revision: 75463
http://sourceforge.net/p/brlcad/code/75463
Author: starseeker
Date: 2020-04-18 13:21:34 +0000 (Sat, 18 Apr 2020)
Log Message:
-----------
Merge changes from trunk through r75462
Modified Paths:
--------------
brlcad/branches/dm-fb-merge/CHANGES
brlcad/branches/dm-fb-merge/TODO
brlcad/branches/dm-fb-merge/src/conv/CMakeLists.txt
brlcad/branches/dm-fb-merge/src/librt/cache.c
brlcad/branches/dm-fb-merge/src/libtermio/CMakeLists.txt
brlcad/branches/dm-fb-merge/src/libtermio/termcap.c
brlcad/branches/dm-fb-merge/src/libtermio/tgoto.c
brlcad/branches/dm-fb-merge/src/other/tcl/CMakeLists.txt
Removed Paths:
-------------
brlcad/branches/dm-fb-merge/src/conv/proe-g.c
Property Changed:
----------------
brlcad/branches/dm-fb-merge/
brlcad/branches/dm-fb-merge/CHANGES
brlcad/branches/dm-fb-merge/src/other/
Index: brlcad/branches/dm-fb-merge
===================================================================
--- brlcad/branches/dm-fb-merge 2020-04-18 13:15:56 UTC (rev 75462)
+++ brlcad/branches/dm-fb-merge 2020-04-18 13:21:34 UTC (rev 75463)
Property changes on: brlcad/branches/dm-fb-merge
___________________________________________________________________
Modified: svn:mergeinfo
## -6,4 +6,5 ##
/brlcad/branches/opencl:65867-66137
/brlcad/branches/osg:62110-62113
/brlcad/branches/prep-cache:68236-68933
-/brlcad/branches/tcltk86:68300-75257
\ No newline at end of property
+/brlcad/branches/tcltk86:68300-75257
+/brlcad/trunk:75440-75462
\ No newline at end of property
Modified: brlcad/branches/dm-fb-merge/CHANGES
===================================================================
--- brlcad/branches/dm-fb-merge/CHANGES 2020-04-18 13:15:56 UTC (rev 75462)
+++ brlcad/branches/dm-fb-merge/CHANGES 2020-04-18 13:21:34 UTC (rev 75463)
@@ -1525,3 +1525,5 @@
s/wdb_metaballpt/wdb_metaball_pnt/g
s/wdb_pipept/wdb_pipe_pnt/g
renamed points from pt to pnt for consistency [7.30]
+s/proe-brl/creo-brl/g
+ replaced by newer creo plugin [7.30]
Property changes on: brlcad/branches/dm-fb-merge/CHANGES
___________________________________________________________________
Modified: svn:mergeinfo
## -1,2 +1,3 ##
/brlcad/branches/RELEASE/CHANGES:70323-70333,71915-72242,72525-72534,72826-72858,74376-74454,74964-75140
-/brlcad/branches/brep-debug/CHANGES:69168,69927,69995-69996,70148-70149,70347-70349,70377,70526-70527,71006-71007,71009-71022,71046-71047,71049,71096-71100
\ No newline at end of property
+/brlcad/branches/brep-debug/CHANGES:69168,69927,69995-69996,70148-70149,70347-70349,70377,70526-70527,71006-71007,71009-71022,71046-71047,71049,71096-71100
+/brlcad/trunk/CHANGES:75440-75462
\ No newline at end of property
Modified: brlcad/branches/dm-fb-merge/TODO
===================================================================
--- brlcad/branches/dm-fb-merge/TODO 2020-04-18 13:15:56 UTC (rev 75462)
+++ brlcad/branches/dm-fb-merge/TODO 2020-04-18 13:21:34 UTC (rev 75463)
@@ -18,6 +18,10 @@
THESE TASKS SHOULD HAPPEN BEFORE THE NEXT RELEASE
-------------------------------------------------
+* The embedded framebuffer for the X display manager is not working
+ with Tcl/Tk 8.6 - it brings down mged with an Xerror when it tries
+ to XFlush after X24_blit.
+
THESE TASKS SHOULD HAPPEN WITHIN TWO RELEASE ITERATIONS
-------------------------------------------------------
Modified: brlcad/branches/dm-fb-merge/src/conv/CMakeLists.txt
===================================================================
--- brlcad/branches/dm-fb-merge/src/conv/CMakeLists.txt 2020-04-18 13:15:56 UTC
(rev 75462)
+++ brlcad/branches/dm-fb-merge/src/conv/CMakeLists.txt 2020-04-18 13:21:34 UTC
(rev 75463)
@@ -121,8 +121,6 @@
BRLCAD_ADDEXEC(nastran-g nastran-g.c "libwdb;librt;libnmg;libbu;${M_LIBRARY}")
-BRLCAD_ADDEXEC(proe-g proe-g.c "libwdb;librt;libbu;${M_LIBRARY}")
-
BRLCAD_ADDEXEC(shp-g
"shp/shp-g.c;shp/shapelib/safileio.c;shp/shapelib/shpopen.c"
"libwdb;librt;libbu")
BRLCAD_ADDEXEC(g-shell-rect g-shell-rect.c
"libwdb;librt;libnmg;libbu;${M_LIBRARY}")
Deleted: brlcad/branches/dm-fb-merge/src/conv/proe-g.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/conv/proe-g.c 2020-04-18 13:15:56 UTC
(rev 75462)
+++ brlcad/branches/dm-fb-merge/src/conv/proe-g.c 2020-04-18 13:21:34 UTC
(rev 75463)
@@ -1,1160 +0,0 @@
-/* P R O E - G . C
- * BRL-CAD
- *
- * Copyright (c) 1994-2020 United States Government as represented by
- * the U.S. Army Research Laboratory.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * version 2.1 as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it 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 this file; see the file named COPYING for more
- * information.
- *
- */
-/** @file conv/proe-g.c
- *
- * Code to convert ascii output from Pro/Engineer to BRL-CAD
- * The required output is from the Pro/Develop application proe-brl
- * that must be initiated from the "BRL-CAD" option of Pro/Engineer's
- * "EXPORT" menu.
- *
- */
-
-#include "common.h"
-
-#include <stdlib.h>
-#include <math.h>
-#include <string.h>
-#include <ctype.h>
-
-#ifdef __restrict
-# undef __restrict
-#endif
-#define __restrict /* quell gcc 4.1.2 system regex.h -pedantic-errors */
-#include <regex.h>
-
-#include <errno.h>
-#include "bio.h"
-
-#include "vmath.h"
-#include "bu/app.h"
-#include "bu/getopt.h"
-#include "bu/units.h"
-#include "nmg.h"
-#include "rt/geom.h"
-#include "raytrace.h"
-#include "wdb.h"
-
-
-static struct wmember all_head;
-static char *input_file; /* name of the input file */
-static char *brlcad_file; /* name of output file */
-static struct bu_vls ret_name = BU_VLS_INIT_ZERO; /* unique name built by
Build_unique_name() */
-static char *forced_name=NULL; /* name specified on command line */
-static int stl_format=0; /* Flag, non-zero indicates raw
Stereolithography format input */
-static int solid_count=0; /* count of solids converted */
-static struct bn_tol tol; /* Tolerance structure */
-static int id_no=1000; /* Ident numbers */
-static int const_id=-1; /* Constant ident number (assigned to
all regions if non-negative) */
-static int mat_code=1; /* default material code */
-static int air_no=1; /* Air numbers */
-static int debug=0; /* Debug flag */
-static int cut_count=0; /* count of assembly cut HAF solids
created */
-static int do_regex=0; /* flag to indicate if 'u' option is in effect
*/
-static regex_t reg_cmp; /* compiled regular expression */
-static FILE *fd_in; /* input file (from Pro/E) */
-static struct rt_wdb *fd_out; /* Resulting BRL-CAD file */
-static struct bu_ptbl null_parts; /* Table of NULL solids */
-static float conv_factor=1.0; /* conversion factor from model units to mm */
-static int top_level=1; /* flag to catch top level assembly or
part */
-static mat_t re_orient; /* rotation matrix to put model in
BRL-CAD orientation
- * (+x towards front +z is up) */
-static int do_air=0; /* When set, all regions are BRL-CAD "air"
regions */
-static int do_reorient=1; /* When set, reorient entire model to BRL-CAD
style */
-static unsigned int obj_count=0; /* Count of parts converted for "stl-g"
conversions */
-static int *bot_faces=NULL; /* array of ints (indices into
vert_tree_root->the_array array) three per face */
-static int bot_fsize=0; /* current size of the bot_faces array
*/
-static int bot_fcurr=0; /* current bot face */
-static struct bn_vert_tree *vert_tree; /* binary search tree for vertices */
-
-/* Size of blocks of faces to malloc */
-#define BOT_FBLOCK 128
-
-struct render_verts
-{
- point_t pt;
- struct vertex *v;
-};
-
-
-struct name_conv_list
-{
- char *brlcad_name;
- char *solid_name;
- char *name;
- unsigned int obj;
- int solid_use_no;
- int comb_use_no;
- struct name_conv_list *next;
-} *name_root=(struct name_conv_list *)NULL;
-
-struct ptc_plane
-{
- double e1[3], e2[3], e3[3], origin[3];
-};
-
-
-struct ptc_cylinder
-{
- double e1[3], e2[3], e3[3], origin[3];
- double radius;
-};
-
-
-union ptc_surf
-{
- struct ptc_plane plane;
- struct ptc_cylinder cylinder;
-};
-
-
-struct ptc_surf_list
-{
- struct bu_list l;
- int type;
- union ptc_surf surf;
-} *surf_root=(struct ptc_surf_list *)NULL;
-
-/* for type in struct ptc_plane and struct ptc_cylinder */
-#define SURF_PLANE 1
-#define SURF_CYLINDER 2
-
-#define MAX_LINE_SIZE 512
-
-#define UNKNOWN_TYPE 0
-#define ASSEMBLY_TYPE 1
-#define PART_TYPE 2
-#define CUT_SOLID_TYPE 3
-
-char *
-Build_unique_name(char *name)
-{
- struct name_conv_list *ptr;
- size_t name_len;
- size_t tries=0;
-
- name_len = strlen(name);
- bu_vls_strcpy(&ret_name, name);
- ptr = name_root;
- while (ptr) {
- if (BU_STR_EQUAL(bu_vls_addr(&ret_name), ptr->brlcad_name) ||
- (ptr->solid_name && BU_STR_EQUAL(bu_vls_addr(&ret_name),
ptr->solid_name))) {
- /* this name already exists, build a new one */
- ++tries;
- bu_vls_trunc(&ret_name, name_len);
- bu_vls_printf(&ret_name, "_%ld", (long)tries);
-
- ptr = name_root;
- }
-
- ptr = ptr->next;
- }
-
- return bu_vls_addr(&ret_name);
-}
-
-
-static struct name_conv_list *
-Add_new_name(char *name, unsigned int obj, int type)
-{
- struct name_conv_list *ptr;
-
- if (debug)
- bu_log("Add_new_name(%s, x%x, %d)\n", name, obj, type);
-
- if (type != ASSEMBLY_TYPE && type != PART_TYPE && type != CUT_SOLID_TYPE) {
- bu_exit(EXIT_FAILURE, "Bad type for name (%s) in Add_new_name\n", name);
- }
-
-
- /* Add a new name */
- BU_ALLOC(ptr, struct name_conv_list);
- ptr->next = (struct name_conv_list *)NULL;
- ptr->brlcad_name = bu_strdup(name);
- ptr->obj = obj;
- if (do_regex && type != CUT_SOLID_TYPE) {
- regmatch_t pmatch;
-
- if (regexec(®_cmp, ptr->brlcad_name, 1, &pmatch, 0) == 0) {
- /* got a match */
- bu_strlcpy(&ptr->brlcad_name[pmatch.rm_so],
&ptr->brlcad_name[pmatch.rm_eo], MAX_LINE_SIZE);
- }
- if (debug)
- bu_log("\tafter reg_ex, name is %s\n", ptr->brlcad_name);
- } else if (type == CUT_SOLID_TYPE) {
- bu_free((char *)ptr->brlcad_name, "brlcad_name");
- ptr->brlcad_name = NULL;
- }
- ptr->solid_use_no = 0;
- ptr->comb_use_no = 0;
-
- if (type != CUT_SOLID_TYPE) {
- /* make sure brlcad_name is unique */
- char *tmp;
-
- tmp = ptr->brlcad_name;
- ptr->brlcad_name = bu_strdup(Build_unique_name(ptr->brlcad_name));
- bu_free((char *)tmp, "brlcad_name");
- }
-
- if (type == ASSEMBLY_TYPE) {
- ptr->solid_name = NULL;
- return ptr;
- } else if (type == PART_TYPE) {
- struct bu_vls vls = BU_VLS_INIT_ZERO;
-
- bu_vls_strcpy(&vls, "s.");
- bu_vls_strcat(&vls, ptr->brlcad_name);
-
- ptr->solid_name = bu_vls_strgrab(&vls);
- } else {
- struct bu_vls vls = BU_VLS_INIT_ZERO;
-
- bu_vls_strcpy(&vls, "s.");
- bu_vls_strcat(&vls, ptr->brlcad_name);
-
- ptr->solid_name = bu_vls_strgrab(&vls);
- }
-
- /* make sure solid name is unique */
- ptr->solid_name = bu_strdup(Build_unique_name(ptr->solid_name));
- return ptr;
-}
-
-
-static char *
-Get_unique_name(char *name, unsigned int obj, int type)
-{
- struct name_conv_list *ptr, *prev;
-
- if (name_root == (struct name_conv_list *)NULL) {
- /* start new list */
- name_root = Add_new_name(name, obj, type);
- ptr = name_root;
- } else {
- int found=0;
-
- prev = (struct name_conv_list *)NULL;
- ptr = name_root;
- while (ptr && !found) {
- if (obj == ptr->obj)
- found = 1;
- else {
- prev = ptr;
- ptr = ptr->next;
- }
- }
-
- if (!found) {
- prev->next = Add_new_name(name, obj, type);
- ptr = prev->next;
- }
- }
-
- return ptr->brlcad_name;
-}
-
-
-static char *
-Get_solid_name(char *name, unsigned int obj)
-{
- struct name_conv_list *ptr;
-
- ptr = name_root;
-
- while (ptr && obj != ptr->obj)
- ptr = ptr->next;
-
- if (!ptr)
- ptr = Add_new_name(name, 0, PART_TYPE);
-
- return ptr->solid_name;
-}
-
-
-static void
-Convert_assy(char *line)
-{
- struct wmember head;
- struct wmember *wmem = NULL;
- char line1[MAX_LINE_SIZE];
- char name[MAX_LINE_SIZE];
- unsigned int obj;
- char memb_name[MAX_LINE_SIZE];
- unsigned int memb_obj;
- char *brlcad_name = NULL;
- float mat_col[4];
- float junk;
- int start;
- int i;
-
- BU_LIST_INIT(&head.l);
-
- start = (-1);
- /* skip leading blanks */
- while (isspace((int)line[++start]) && line[start] != '\0');
- if (bu_strncmp(&line[start], "assembly", 8) && bu_strncmp(&line[start],
"ASSEMBLY", 8)) {
- bu_log("PROE-G: Convert_assy called for non-assembly:\n%s\n", line);
- return;
- }
-
- /* skip blanks before name */
- start += 7;
- while (isspace((int)line[++start]) && line[start] != '\0');
-
- /* get name */
- i = (-1);
- start--;
- while (!isspace((int)line[++start]) && line[start] != '\0' && line[start]
!= '\n')
- name[++i] = line[start];
- name[++i] = '\0';
-
- /* get object pointer */
- sscanf(&line[start], "%x %f", &obj, &junk);
-
- bu_log("Converting Assembly: %s\n", name);
-
- if (debug)
- bu_log("Convert_assy: %s x%x\n", name, obj);
-
- while (bu_fgets(line1, MAX_LINE_SIZE, fd_in)) {
- /* skip leading blanks */
- start = (-1);
- while (isspace((int)line1[++start]) && line[start] != '\0');
-
- if (!bu_strncmp(&line1[start], "endassembly", 11) ||
!bu_strncmp(&line1[start], "ENDASSEMBLY", 11)) {
-
- brlcad_name = Get_unique_name(name, obj, ASSEMBLY_TYPE);
- if (debug) {
- struct wmember *wp;
-
- bu_log("\tmake assembly (%s)\n", brlcad_name);
- for (BU_LIST_FOR (wp, wmember, &head.l))
- bu_log("\t%c %s\n", wp->wm_op, wp->wm_name);
- } else {
- bu_log("\tUsing name: %s\n", brlcad_name);
- }
-
- mk_lcomb(fd_out, brlcad_name, &head, 0 ,
- (char *)NULL, (char *)NULL, (unsigned char *)NULL, 0);
- break;
- } else if (!bu_strncmp(&line1[start], "member", 6) ||
!bu_strncmp(&line1[start], "MEMBER", 6)) {
- start += 5;
- while (isspace((int)line1[++start]) && line1[start] != '\0');
- i = (-1);
- start--;
- while (!isspace((int)line1[++start]) && line1[start] != '\0' &&
line1[start] != '\n')
- memb_name[++i] = line1[start];
- memb_name[++i] = '\0';
-
-
- sscanf(&line1[start], "%x", &memb_obj);
-
- brlcad_name = Get_unique_name(memb_name, memb_obj, PART_TYPE);
- if (debug)
- bu_log("\tmember (%s)\n", brlcad_name);
- wmem = mk_addmember(brlcad_name, &head.l, NULL, WMOP_UNION);
- } else if (!bu_strncmp(&line1[start], "matrix", 6) ||
!bu_strncmp(&line1[start], "MATRIX", 6)) {
- if (wmem) {
- size_t j;
- double scale, inv_scale;
-
- for (j=0; j<4; j++) {
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- sscanf(line1, "%f %f %f %f", &mat_col[0], &mat_col[1],
&mat_col[2], &mat_col[3]);
- for (i=0; i<4; i++)
- wmem->wm_mat[4*i+j] = mat_col[i];
- }
-
- scale = pow(bn_mat_det3(wmem->wm_mat), 1.0/3.0);
- if (debug) {
- bn_mat_print(brlcad_name, wmem->wm_mat);
- bu_log("\tscale = %g, conv_factor = %g\n", scale,
conv_factor);
- }
- if (!ZERO(scale - 1.0)) {
- inv_scale = 1.0/scale;
- for (j=0; j<3; j++)
- HSCALE(&wmem->wm_mat[j*4], &wmem->wm_mat[j*4],
inv_scale);
-
- /* clamp rotation elements to fabs(1.0) */
- for (j=0; j<3; j++) {
- for (i=0; i<3; i++) {
- if (wmem->wm_mat[j*4 + i] > 1.0)
- wmem->wm_mat[j*4 + i] = 1.0;
- else if (wmem->wm_mat[j*4 + i] < -1.0)
- wmem->wm_mat[j*4 + i] = -1.0;
- }
- }
-
- if (top_level)
- wmem->wm_mat[15] *= (inv_scale/conv_factor);
- else
- wmem->wm_mat[15] *= inv_scale;
- } else if (top_level)
- wmem->wm_mat[15] /= conv_factor;
-
- if (top_level && do_reorient) {
- /* apply re_orient transformation here */
- if (debug) {
- bu_log("Applying re-orient matrix to member %s\n",
brlcad_name);
- bn_mat_print("re-orient matrix", re_orient);
- }
- bn_mat_mul2(re_orient, wmem->wm_mat);
- }
- if (debug)
- bn_mat_print("final matrix", wmem->wm_mat);
- } else {
- bu_log("Matrix present before wmem is initialized! (%s)\n",
brlcad_name);
- }
- } else {
- bu_log("Unrecognized line in assembly (%s)\n%s\n", name, line1);
- }
- }
-
- top_level = 0;
-}
-
-
-static void
-do_modifiers(char *line1, int *start, struct wmember *head, char *name,
fastf_t *min, fastf_t *max)
-{
- struct wmember *wmem;
- int i;
-
- while (bu_strncmp(&line1[*start], "endmodifiers", 12) &&
bu_strncmp(&line1[*start], "ENDMODIFIERS", 12)) {
- if (!bu_strncmp(&line1[*start], "plane", 5) ||
!bu_strncmp(&line1[*start], "PLANE", 5)) {
- struct name_conv_list *ptr;
- char haf_name[MAX_LINE_SIZE];
- fastf_t dist;
- fastf_t tmp_dist;
- point_t origin;
- plane_t plane;
- vect_t e1, e2;
- double u_min, u_max, v_min, v_max;
- double x, y, z;
- int orient;
- point_t arb_pt[8];
- point_t rpp_corner;
-
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- sscanf(line1, "%lf %lf %lf", &x, &y, &z);
- VSET(origin, x, y, z);
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- sscanf(line1, "%lf %lf %lf", &x, &y, &z);
- VSET(e1, x, y, z);
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- sscanf(line1, "%lf %lf %lf", &x, &y, &z);
- VSET(e2, x, y, z);
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- sscanf(line1, "%lf %lf %lf", &x, &y, &z);
- VSET(plane, x, y, z);
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- sscanf(line1, "%lf %lf", &u_min, &v_min);
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- sscanf(line1, "%lf %lf", &u_max, &v_max);
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- sscanf(line1, "%d", &orient);
-
- plane[H] = VDOT(plane, origin);
-
- VJOIN2(arb_pt[0], origin, u_min, e1, v_min, e2);
- VJOIN2(arb_pt[1], origin, u_max, e1, v_min, e2);
- VJOIN2(arb_pt[2], origin, u_max, e1, v_max, e2);
- VJOIN2(arb_pt[3], origin, u_min, e1, v_max, e2);
-
- /* find max distance to corner of enclosing RPP */
- dist = 0.0;
- VSET(rpp_corner, min[X], min[Y], min[Z]);
- tmp_dist = DIST_PNT_PLANE(rpp_corner, plane) * (fastf_t)orient;
- V_MAX(dist, tmp_dist);
-
- VSET(rpp_corner, min[X], min[Y], max[Z]);
- tmp_dist = DIST_PNT_PLANE(rpp_corner, plane) * (fastf_t)orient;
- V_MAX(dist, tmp_dist);
-
- VSET(rpp_corner, min[X], max[Y], min[Z]);
- tmp_dist = DIST_PNT_PLANE(rpp_corner, plane) * (fastf_t)orient;
- V_MAX(dist, tmp_dist);
-
- VSET(rpp_corner, min[X], max[Y], max[Z]);
- tmp_dist = DIST_PNT_PLANE(rpp_corner, plane) * (fastf_t)orient;
- V_MAX(dist, tmp_dist);
-
- VSET(rpp_corner, max[X], min[Y], min[Z]);
- tmp_dist = DIST_PNT_PLANE(rpp_corner, plane) * (fastf_t)orient;
- V_MAX(dist, tmp_dist);
-
- VSET(rpp_corner, max[X], min[Y], max[Z]);
- tmp_dist = DIST_PNT_PLANE(rpp_corner, plane) * (fastf_t)orient;
- V_MAX(dist, tmp_dist);
-
- VSET(rpp_corner, max[X], max[Y], min[Z]);
- tmp_dist = DIST_PNT_PLANE(rpp_corner, plane) * (fastf_t)orient;
- V_MAX(dist, tmp_dist);
-
- VSET(rpp_corner, max[X], max[Y], max[Z]);
- tmp_dist = DIST_PNT_PLANE(rpp_corner, plane) * (fastf_t)orient;
- V_MAX(dist, tmp_dist);
-
- for (i=0; i<4; i++) {
- VJOIN1(arb_pt[i+4], arb_pt[i], dist*(fastf_t)orient, plane);
- }
-
- if (top_level) {
- for (i=0; i<8; i++) {
- VSCALE(arb_pt[i], arb_pt[i], conv_factor);
- }
- }
-
- cut_count++;
-
- snprintf(haf_name, MAX_LINE_SIZE, "cut.%d", cut_count);
- ptr = Add_new_name(haf_name, 0, CUT_SOLID_TYPE);
- if (mk_arb8(fd_out, ptr->solid_name, (fastf_t *)arb_pt))
- bu_log("Failed to create ARB8 solid for Assembly cut in part
%s\n", name);
- else {
- /* Add this cut to the region */
- wmem = mk_addmember(ptr->solid_name, &(head->l), NULL,
- WMOP_SUBTRACT);
-
- if (top_level && do_reorient) {
- /* apply re_orient transformation here */
- if (debug) {
- bu_log("Applying re-orient matrix to solid %s\n",
ptr->solid_name);
- bn_mat_print("re-orient matrix", re_orient);
- }
- bn_mat_mul2(re_orient, wmem->wm_mat);
- }
-
- }
- }
- bu_fgets(line1, MAX_LINE_SIZE, fd_in);
- (*start) = (-1);
- while (isspace((int)line1[++(*start)]));
- }
-}
-
-
-void
-Add_face(int *face)
-{
- if (!bot_faces) {
- bot_faces = (int *)bu_malloc(3 * BOT_FBLOCK * sizeof(int), "bot_faces");
- bot_fsize = BOT_FBLOCK;
- bot_fcurr = 0;
- } else if (bot_fcurr >= bot_fsize) {
- bot_fsize += BOT_FBLOCK;
- bot_faces = (int *)bu_realloc((void *)bot_faces, 3 * bot_fsize *
sizeof(int), "bot_faces increase");
- }
-
- VMOVE(&bot_faces[3*bot_fcurr], face);
- bot_fcurr++;
-}
-
-
-static void
-Convert_part(char *line)
-{
- char line1[MAX_LINE_SIZE];
- char name[MAX_LINE_SIZE];
- unsigned int obj=0;
- char *solid_name;
- int start;
- int i;
- int face_count=0;
- int degenerate_count=0;
- float colr[3] = VINITALL(0.5);
- unsigned char color[3]={ 128, 128, 128 };
- char *brlcad_name;
- struct wmember head;
- struct wmember *wmem;
- vect_t normal={ 0, 0, 0 };
- int solid_in_region=0;
- point_t part_max, part_min; /* Part RPP */
-
- bot_fcurr = 0;
- BU_LIST_INIT(&head.l);
- VSETALL(part_min, INFINITY);
- VSETALL(part_max, -INFINITY);
-
- bn_vert_tree_clean(vert_tree);
-
- start = (-1);
- /* skip leading blanks */
- while (isspace((int)line[++start]) && line[start] != '\0');
- if (bu_strncmp(&line[start], "solid", 5) && bu_strncmp(&line[start],
"SOLID", 5)) {
- bu_log("Convert_part: Called for non-part\n%s\n", line);
- return;
- }
-
- /* skip blanks before name */
- start += 4;
- while (isspace((int)line[++start]) && line[start] != '\0');
-
- if (line[start] != '\0') {
- /* get name */
- i = (-1);
- start--;
- while (!isspace((int)line[++start]) && line[start] != '\0' &&
line[start] != '\n')
- name[++i] = line[start];
- name[++i] = '\0';
-
- /* get object id */
- sscanf(&line[start], "%x", &obj);
- } else if (stl_format && forced_name) {
- bu_strlcpy(name, forced_name, MAX_LINE_SIZE);
- } else if (stl_format) {
- /* build a name from the file name */
- char tmp_str[512];
- char *ptr;
- size_t len, suff_len;
-
- obj_count++;
- obj = obj_count;
-
- /* copy the file name into our work space */
- bu_strlcpy(tmp_str, input_file, sizeof(tmp_str));
-
- /* eliminate a trailing ".stl" */
- len = strlen(tmp_str);
- if (len > 4) {
- if (!bu_strncmp(&tmp_str[len-4], ".stl", 4))
- tmp_str[len-4] = '\0';
- }
-
- /* skip over all characters prior to the last '/' */
- ptr = strrchr(tmp_str, '/');
- if (!ptr)
- ptr = tmp_str;
- else
- ptr++;
-
- /* now copy what is left to the name */
- bu_strlcpy(name, ptr, MAX_LINE_SIZE);
-
- sprintf(tmp_str, "_%d", obj_count);
- len = strlen(name);
- suff_len = strlen(tmp_str);
- if (len + suff_len < MAX_LINE_SIZE-1)
- bu_strlcat(name, tmp_str, sizeof(name));
- else
- snprintf(&name[MAX_LINE_SIZE-suff_len-1], MAX_LINE_SIZE, "%s",
tmp_str);
- name[MAX_LINE_SIZE-1] = '\0'; /* sanity */
-
- } else {
- bu_strlcpy(name, "noname", MAX_LINE_SIZE);
- }
-
- bu_log("Converting Part: %s\n", name);
-
- if (debug)
- bu_log("Conv_part %s x%x\n", name, obj);
-
- solid_count++;
- solid_name = Get_solid_name(name, obj);
-
- bu_log("\tUsing solid name: %s\n", solid_name);
-
- while (bu_fgets(line1, MAX_LINE_SIZE, fd_in) != NULL) {
- start = (-1);
- while (isspace((int)line1[++start]));
- if (!bu_strncmp(&line1[start], "endsolid", 8) ||
!bu_strncmp(&line1[start], "ENDSOLID", 8)) {
- break;
- } else if (!bu_strncmp(&line1[start], "color", 5) ||
!bu_strncmp(&line1[start], "COLOR", 5)) {
- sscanf(&line1[start+5], "%f%f%f", &colr[0], &colr[1], &colr[2]);
- for (i=0; i<3; i++)
- color[i] = (int)(colr[i] * 255.0);
- } else if (!bu_strncmp(&line1[start], "normal", 6) ||
!bu_strncmp(&line1[start], "NORMAL", 6)) {
- float x, y, z;
-
- start += 6;
- sscanf(&line1[start], "%f%f%f", &x, &y, &z);
- VSET(normal, x, y, z);
- } else if (!bu_strncmp(&line1[start], "facet", 5) ||
!bu_strncmp(&line1[start], "FACET", 5)) {
- VSET(normal, 0.0, 0.0, 0.0);
-
- start += 4;
- while (line1[++start] && isspace((int)line1[start]));
-
- if (line1[start]) {
- if (!bu_strncmp(&line1[start], "normal", 6) ||
!bu_strncmp(&line1[start], "NORMAL", 6)) {
- float x, y, z;
-
- start += 6;
- sscanf(&line1[start], "%f%f%f", &x, &y, &z);
- VSET(normal, x, y, z);
- }
- }
- } else if (!bu_strncmp(&line1[start], "outer loop", 10) ||
!bu_strncmp(&line1[start], "OUTER LOOP", 10)) {
- int endloop=0;
- int vert_no=0;
- int tmp_face[3] = {0, 0, 0};
-
- while (!endloop) {
- if (bu_fgets(line1, MAX_LINE_SIZE, fd_in) == NULL)
- bu_exit(EXIT_FAILURE, "Unexpected EOF while reading a loop
in a part!!!\n");
-
- start = (-1);
- while (isspace((int)line1[++start]));
-
- if (!bu_strncmp(&line1[start], "endloop", 7) ||
!bu_strncmp(&line1[start], "ENDLOOP", 7)) {
- endloop = 1;
- } else if (!bu_strncmp(&line1[start], "vertex", 6) ||
!bu_strncmp(&line1[start], "VERTEX", 6)) {
- double x, y, z;
-
- sscanf(&line1[start+6], "%lf%lf%lf", &x, &y, &z);
- if (top_level) {
- x *= conv_factor;
- y *= conv_factor;
- z *= conv_factor;
- }
-
- if (vert_no > 2) {
- int n;
-
- bu_log("Non-triangular loop:\n");
- for (n=0; n<3; n++)
- bu_log("\t(%g %g %g)\n",
V3ARGS(&vert_tree->the_array[tmp_face[n]]));
-
- bu_log("\t(%g %g %g)\n", x, y, z);
- }
- tmp_face[vert_no++] = bn_vert_tree_add( vert_tree,x, y, z,
tol.dist_sq);
- VMINMAX(part_min, part_max,
&vert_tree->the_array[tmp_face[vert_no-1]*3]);
- } else
- bu_log("Unrecognized line: %s\n", line1);
- }
-
- /* check for degenerate faces */
- if (tmp_face[0] == tmp_face[1]) {
- degenerate_count++;
- continue;
- }
-
- if (tmp_face[0] == tmp_face[2]) {
- degenerate_count++;
- continue;
- }
-
- if (tmp_face[1] == tmp_face[2]) {
- degenerate_count++;
- continue;
- }
-
- if (debug) {
- int n;
-
- bu_log("Making Face:\n");
- for (n=0; n<3; n++)
- bu_log("\tvertex #%d: (%g %g %g)\n", tmp_face[n],
V3ARGS(&vert_tree->the_array[3*tmp_face[n]]));
- VPRINT(" normal", normal);
- }
-
- Add_face(tmp_face);
- face_count++;
- } else if (!bu_strncmp(&line1[start], "modifiers", 9) ||
!bu_strncmp(&line1[start], "MODIFIERS", 9)) {
- if (face_count) {
- wmem = mk_addmember(solid_name, &head.l, NULL, WMOP_UNION);
- if (top_level && do_reorient) {
- /* apply re_orient transformation here */
- if (debug) {
- bu_log("Applying re-orient matrix to solid %s\n",
solid_name);
- bn_mat_print("re-orient matrix", re_orient);
- }
- bn_mat_mul2(re_orient, wmem->wm_mat);
- }
- solid_in_region = 1;
- }
- do_modifiers(line1, &start, &head, name, part_min, part_max);
- }
- }
-
- /* Check if this part has any solid parts */
- if (face_count == 0) {
- char *save_name;
-
- bu_log("\t%s has no solid parts, ignoring\n", name);
- if (degenerate_count)
- bu_log("\t%d faces were degenerate\n", degenerate_count);
- brlcad_name = Get_unique_name(name, obj, PART_TYPE);
- save_name = bu_strdup(brlcad_name);
- bu_ptbl_ins(&null_parts, (long *)save_name);
- return;
- } else {
- if (degenerate_count)
- bu_log("\t%d faces were degenerate\n", degenerate_count);
- }
-
- mk_bot(fd_out, solid_name, RT_BOT_SOLID, RT_BOT_UNORIENTED, 0,
vert_tree->curr_vert, bot_fcurr,
- vert_tree->the_array, bot_faces, NULL, NULL);
-
- if (face_count && !solid_in_region) {
- wmem = mk_addmember(solid_name, &head.l, NULL, WMOP_UNION);
- if (top_level && do_reorient) {
- /* apply re_orient transformation here */
- if (debug) {
- bu_log("Applying re-orient matrix to solid %s\n", solid_name);
- bn_mat_print("re-orient matrix", re_orient);
- }
- bn_mat_mul2(re_orient, wmem->wm_mat);
- }
- }
- brlcad_name = Get_unique_name(name, obj, PART_TYPE);
-
- if (do_air) {
- bu_log("\tMaking air region (%s)\n", brlcad_name);
-
- mk_lrcomb(fd_out, brlcad_name, &head, 1, (char *)NULL, (char *)NULL,
- color, 0, air_no, 0, 100, 0);
- air_no++;
- } else {
- bu_log("\tMaking region (%s)\n", brlcad_name);
-
- if (const_id >= 0) {
- mk_lrcomb(fd_out, brlcad_name, &head, 1, (char *)NULL, (char *)NULL,
- color, const_id, 0, mat_code, 100, 0);
- if (stl_format && face_count)
- (void)mk_addmember(brlcad_name, &all_head.l, NULL, WMOP_UNION);
- } else {
- mk_lrcomb(fd_out, brlcad_name, &head, 1, (char *)NULL, (char *)NULL,
- color, id_no, 0, mat_code, 100, 0);
- if (stl_format && face_count)
- (void)mk_addmember(brlcad_name, &all_head.l, NULL, WMOP_UNION);
- id_no++;
- }
- }
-
- top_level = 0;
-
- return;
-}
-
-
-static void
-Convert_input(void)
-{
- char line[ MAX_LINE_SIZE ];
-
- if (!stl_format) {
- if (!bu_fgets(line, MAX_LINE_SIZE, fd_in))
- return;
-
- sscanf(line, "%f", &conv_factor);
- }
-
- if (!do_reorient && !stl_format)
- conv_factor = 1.0;
-
- while (bu_fgets(line, MAX_LINE_SIZE, fd_in) != NULL) {
- if (!bu_strncmp(line, "assembly", 8) || !bu_strncmp(line, "ASSEMBLY",
8))
- Convert_assy(line);
- else if (!bu_strncmp(line, "solid", 5) || !bu_strncmp(line, "SOLID", 5))
- Convert_part(line);
- else
- bu_log("Unrecognized line:\n%s\n", line);
- }
-}
-
-
-static void
-Rm_nulls(void)
-{
- struct db_i *dbip;
- size_t i;
- struct directory *dp;
-
- dbip = fd_out->dbip;
-
- if (debug || BU_PTBL_LEN(&null_parts)) {
- bu_log("Deleting references to the following null parts:\n");
- for (i=0; i<BU_PTBL_LEN(&null_parts); i++) {
- char *save_name;
-
- save_name = (char *)BU_PTBL_GET(&null_parts, i);
- bu_log("\t%s\n", save_name);
- }
- }
-
- FOR_ALL_DIRECTORY_START(dp, dbip) {
- struct rt_tree_array *tree_list;
- struct rt_db_internal intern;
- struct rt_comb_internal *comb;
- size_t j;
- size_t node_count;
- size_t actual_count;
- int changed=0;
-
- /* skip solids */
- if (dp->d_flags & RT_DIR_SOLID)
- continue;
-
- /* skip non-geometry */
- if (!(dp->d_flags & (RT_DIR_SOLID | RT_DIR_COMB)))
- continue;
-
- if (rt_db_get_internal(&intern, dp, dbip, (matp_t)NULL,
&rt_uniresource) < 1) {
- bu_log("Cannot get internal form of combination %s\n", dp->d_namep);
- continue;
- }
- comb = (struct rt_comb_internal *)intern.idb_ptr;
- RT_CK_COMB(comb);
- if (comb->tree && db_ck_v4gift_tree(comb->tree) < 0) {
- db_non_union_push(comb->tree, &rt_uniresource);
- if (db_ck_v4gift_tree(comb->tree) < 0) {
- bu_log("Cannot flatten tree (%s) for editing\n", dp->d_namep);
- continue;
- }
- }
- node_count = db_tree_nleaves(comb->tree);
- if (node_count > 0) {
- tree_list = (struct rt_tree_array *)bu_calloc(node_count,
- sizeof(struct
rt_tree_array), "tree list");
- actual_count = (struct rt_tree_array *)db_flatten_tree(tree_list,
comb->tree, OP_UNION, 0, &rt_uniresource) - tree_list;
- BU_ASSERT(actual_count == node_count);
- } else {
- tree_list = (struct rt_tree_array *)NULL;
- actual_count = 0;
- }
-
- for (j=0; j<actual_count; j++) {
- size_t k;
- int found=0;
-
- for (k=0; k<BU_PTBL_LEN(&null_parts); k++) {
- char *save_name;
-
- save_name = (char *)BU_PTBL_GET(&null_parts, k);
- if (BU_STR_EQUAL(save_name,
tree_list[j].tl_tree->tr_l.tl_name)) {
- found = 1;
- break;
- }
- }
- if (found) {
- /* This is a NULL part, delete the reference */
-/* if (debug) */
- bu_log("Deleting reference to null part (%s) from combination
%s\n",
- tree_list[j].tl_tree->tr_l.tl_name, dp->d_namep);
-
- db_free_tree(tree_list[j].tl_tree, &rt_uniresource);
-
- for (k=j+1; k<actual_count; k++)
- tree_list[k-1] = tree_list[k]; /* struct copy */
-
- actual_count--;
- j--;
- changed = 1;
- }
- }
-
- if (changed) {
- if (actual_count)
- comb->tree = (union tree *)db_mkgift_tree(tree_list,
actual_count, &rt_uniresource);
- else
- comb->tree = (union tree *)NULL;
-
- if (rt_db_put_internal(dp, dbip, &intern, &rt_uniresource) < 0) {
- const struct rt_functab *ftp = rt_get_functab_by_label("comb");
- bu_log("Unable to write modified combination '%s' to
database\n", dp->d_namep);
- if (ftp && ftp->ft_ifree)
- ftp->ft_ifree(&intern);
- continue;
- }
- }
- bu_free((char *)tree_list, "tree_list");
- } FOR_ALL_DIRECTORY_END;
-}
-
-
-static void
-proe_usage(const char *argv0)
-{
- bu_log("%s [-darS] [-t tolerance] [-i initial_ident] [-I constant_ident]
[-m material_code] [-u reg_exp] [-x rt_debug_flag] proe_file.brl output.g\n",
argv0);
- bu_log(" where proe_file.brl is the output from Pro/Engineer's BRL-CAD
EXPORT option\n");
- bu_log(" and output.g is the name of a BRL-CAD database file to receive
the conversion.\n");
- bu_log(" The -d option prints additional debugging information.\n");
- bu_log(" The -i option sets the initial region ident number (default is
1000).\n");
- bu_log(" The -I option sets the non-negative ident number that will be
assigned to all regions (conflicts with -i).\n");
- bu_log(" The -m option sets the integer material code for all the parts.
(default is 1)\n");
- bu_log(" The -u option indicates that portions of object names that
match the regular expression\n");
- bu_log(" 'reg_exp' should be ignored.\n");
- bu_log(" The -a option creates BRL-CAD 'air' regions from everything in
the model.\n");
- bu_log(" The -r option indicates that the model should not be
re-oriented or scaled, \n");
- bu_log(" but left in the same orientation as it was in
Pro/E.\n");
- bu_log(" This is to allow conversion of parts to be included
in\n");
- bu_log(" previously converted Pro/E assemblies.\n");
- bu_log(" The -S option indicates that the input file is raw STL
(STereoLithography) format.\n");
- bu_log(" The -t option specifies the minimum distance between two
distinct vertices (mm).\n");
- bu_log(" The -x option specifies an RT debug flags (see raytrace.h).\n");
-}
-
-
-int
-main(int argc, char **argv)
-{
- int c;
-
- bu_setprogname(argv[0]);
-
- tol.magic = BN_TOL_MAGIC;
-
- /* this value selected as a reasonable compromise between eliminating
- * needed faces and keeping degenerate faces
- */
- tol.dist = BN_TOL_DIST; /* default, same as MGED, RT, ... */
- tol.dist_sq = tol.dist * tol.dist;
- tol.perp = 1e-6;
- tol.para = 1 - tol.perp;
-
- vert_tree = bn_vert_tree_create();
-
- bu_ptbl_init(&null_parts, 64, " &null_parts");
-
- forced_name = NULL;
-
- if (argc < 2) {
- proe_usage(argv[0]);
- bu_exit(1, NULL);
- }
-
- /* Get command line arguments. */
- while ((c = bu_getopt(argc, argv, "St:i:I:m:rsdax:u:N:c:")) != -1) {
- double tmp;
-
- switch (c) {
- case 't': /* tolerance */
- tmp = atof(bu_optarg);
- if (tmp <= 0.0) {
- bu_log("Tolerance must be greater then zero, using default
(%g)\n",
- tol.dist);
- break;
- }
- tol.dist = tmp;
- tol.dist_sq = tmp * tmp;
- break;
- case 'c': /* convert from units */
- conv_factor = bu_units_conversion(bu_optarg);
- if (ZERO(conv_factor)) {
- bu_log("Illegal units: (%s)\n", bu_optarg);
- bu_exit(EXIT_FAILURE, "Illegal units!!\n");
- } else {
- bu_log("Converting units from %s to mm (conversion factor
is %g)\n", bu_optarg, conv_factor);
- }
- break;
- case 'N': /* force a name on this object */
- forced_name = bu_optarg;
- break;
-
- case 'S': /* raw stl_format format */
- stl_format = 1;
- do_reorient = 0;
- break;
- case 'i':
- id_no = atoi(bu_optarg);
- break;
- case 'I':
- const_id = atoi(bu_optarg);
- if (const_id < 0) {
- bu_log("Illegal value for '-I' option, must be zero or
greater!!!\n");
- proe_usage(argv[0]);
- bu_exit(EXIT_FAILURE, "Illegal value for option '-I'\n");
- }
- break;
- case 'm':
- mat_code = atoi(bu_optarg);
- break;
- case 'd':
- debug = 1;
- break;
- case 'x':
- sscanf(bu_optarg, "%x", (unsigned int *)&rt_debug);
- bu_printb("librt RT_G_DEBUG", RT_G_DEBUG, RT_DEBUG_FORMAT);
- bu_log("\n");
- break;
- case 'u':
- do_regex = 1;
- if (regcomp(®_cmp, bu_optarg, 0)) {
- bu_log("Bad regular expression (%s)\n", bu_optarg);
- proe_usage(argv[0]);
- bu_exit(1, "ERROR: Bad regular expression\n");
- }
- break;
- case 'a':
- do_air = 1;
- break;
- case 'r':
- do_reorient = 0;
- break;
- default:
- proe_usage(argv[0]);
- bu_exit(1, "ERROR: unrecognized argument\n");
- break;
- }
- }
-
- input_file = argv[bu_optind];
- if ((fd_in=fopen(input_file, "rb")) == NULL) {
- bu_log("Cannot open input file (%s)\n", input_file);
- perror(argv[0]);
- bu_exit(1, NULL);
- }
- bu_optind++;
- brlcad_file = argv[bu_optind];
- if ((fd_out=wdb_fopen(brlcad_file)) == NULL) {
- bu_log("Cannot open BRL-CAD file (%s)\n", brlcad_file);
- perror(argv[0]);
- bu_exit(1, NULL);
- }
-
- if (stl_format)
- mk_id_units(fd_out, "Conversion from Stereolithography format", "mm");
- else
- mk_id_units(fd_out, "Conversion from Pro/Engineer", "in");
-
- /* Create re-orient matrix */
- bn_mat_angles(re_orient, 0.0, 90.0, 90.0);
-
- BU_LIST_INIT(&all_head.l);
-
- Convert_input();
-
- if (stl_format) {
- /* make a top level group */
- mk_lcomb(fd_out, "all", &all_head, 0, (char *)NULL, (char *)NULL,
(unsigned char *)NULL, 0);
- }
-
- fclose(fd_in);
-
- /* Remove references to null parts */
- Rm_nulls();
-
- wdb_close(fd_out);
-
- return 0;
-}
-
-
-/*
- * Local Variables:
- * mode: C
- * tab-width: 8
- * indent-tabs-mode: t
- * c-file-style: "stroustrup"
- * End:
- * ex: shiftwidth=4 tabstop=8
- */
Modified: brlcad/branches/dm-fb-merge/src/librt/cache.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/librt/cache.c 2020-04-18 13:15:56 UTC
(rev 75462)
+++ brlcad/branches/dm-fb-merge/src/librt/cache.c 2020-04-18 13:21:34 UTC
(rev 75463)
@@ -387,7 +387,7 @@
buffer = (uint8_t *)bu_malloc(dest->ext_nbytes, "buffer");
BU_ASSERT(dest->ext_nbytes < INT_MAX);
- ret = LZ4_decompress_fast((const char *)(external->ext_buf +
SIZEOF_NETWORK_LONG), (char *)buffer, (int)dest->ext_nbytes);
+ ret = LZ4_decompress_safe((const char *)(external->ext_buf +
SIZEOF_NETWORK_LONG), (char *)buffer, external->ext_nbytes -
SIZEOF_NETWORK_LONG, (int)dest->ext_nbytes);
if (ret > 0)
uncompressed = 1;
Modified: brlcad/branches/dm-fb-merge/src/libtermio/CMakeLists.txt
===================================================================
--- brlcad/branches/dm-fb-merge/src/libtermio/CMakeLists.txt 2020-04-18
13:15:56 UTC (rev 75462)
+++ brlcad/branches/dm-fb-merge/src/libtermio/CMakeLists.txt 2020-04-18
13:21:34 UTC (rev 75463)
@@ -19,7 +19,7 @@
BRLCAD_ADDDATA(termcap termio)
- BRLCAD_ADDLIB(libtermio "${TERMIO_SRCS}" "")
+ BRLCAD_ADDLIB(libtermio "${TERMIO_SRCS}" "libbu")
set_target_properties(libtermio PROPERTIES VERSION 20.0.1 SOVERSION 20)
endif(NOT WIN32)
Modified: brlcad/branches/dm-fb-merge/src/libtermio/termcap.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libtermio/termcap.c 2020-04-18 13:15:56 UTC
(rev 75462)
+++ brlcad/branches/dm-fb-merge/src/libtermio/termcap.c 2020-04-18 13:21:34 UTC
(rev 75463)
@@ -154,7 +154,7 @@
}
hopcount--;
tbuf = holdtbuf;
- bu_strlcpy(rmbuf, &p[1], sizeof(&p[1]));
+ bu_strlcpy(rmbuf, &p[1], TCBUFSIZE);
for (q=tcbuf; *q != ':'; q++)
;
l = holdtc - holdtbuf + strlen(rmbuf) + strlen(q);
@@ -165,7 +165,7 @@
q++;
for (p = holdtc; *q; q++)
*p++ = *q;
- bu_strlcpy(p, rmbuf, sizeof(rmbuf));
+ bu_strlcpy(p, rmbuf, TCBUFSIZE);
p = holdtc;
}
return(1);
@@ -203,7 +203,7 @@
c = tnamatch(name);
tbuf = bp;
if (c) {
- bu_strlcpy(bp, cp, sizeof(cp));
+ bu_strlcpy(bp, cp, TCBUFSIZE);
return(tnchktc());
}
}
Modified: brlcad/branches/dm-fb-merge/src/libtermio/tgoto.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libtermio/tgoto.c 2020-04-18 13:15:56 UTC
(rev 75462)
+++ brlcad/branches/dm-fb-merge/src/libtermio/tgoto.c 2020-04-18 13:21:34 UTC
(rev 75463)
@@ -213,6 +213,6 @@
goto toohard;
}
}
- bu_strlcpy(dp, added, sizeof(added));
+ bu_strlcpy(dp, added, MAXRETURNSIZE);
return (result);
}
Index: brlcad/branches/dm-fb-merge/src/other
===================================================================
--- brlcad/branches/dm-fb-merge/src/other 2020-04-18 13:15:56 UTC (rev
75462)
+++ brlcad/branches/dm-fb-merge/src/other 2020-04-18 13:21:34 UTC (rev
75463)
Property changes on: brlcad/branches/dm-fb-merge/src/other
___________________________________________________________________
Modified: svn:mergeinfo
## -6,4 +6,5 ##
/brlcad/branches/opencl/src/other:65867-66137
/brlcad/branches/osg/src/other:62110-62113
/brlcad/branches/prep-cache/src/other:68236-68933
-/brlcad/branches/tcltk86/src/other:68300-75257
\ No newline at end of property
+/brlcad/branches/tcltk86/src/other:68300-75257
+/brlcad/trunk/src/other:75440-75462
\ No newline at end of property
Modified: brlcad/branches/dm-fb-merge/src/other/tcl/CMakeLists.txt
===================================================================
--- brlcad/branches/dm-fb-merge/src/other/tcl/CMakeLists.txt 2020-04-18
13:15:56 UTC (rev 75462)
+++ brlcad/branches/dm-fb-merge/src/other/tcl/CMakeLists.txt 2020-04-18
13:21:34 UTC (rev 75463)
@@ -43,14 +43,14 @@
project(TCL)
# build shared libs by default
-if(NOT DEFINED BUILD_SHARED_LIBS)
+if (NOT DEFINED BUILD_SHARED_LIBS)
option(BUILD_SHARED_LIBS "Build shared libraries" ON)
-endif(NOT DEFINED BUILD_SHARED_LIBS)
+endif (NOT DEFINED BUILD_SHARED_LIBS)
# build static libs by default
-if(NOT DEFINED BUILD_STATIC_LIBS)
+if (NOT DEFINED BUILD_STATIC_LIBS)
option(BUILD_STATIC_LIBS "Build shared libraries" ON)
-endif(NOT DEFINED BUILD_STATIC_LIBS)
+endif (NOT DEFINED BUILD_STATIC_LIBS)
# version numbers
set(TCL_VERSION_MAJOR 8)
@@ -59,9 +59,9 @@
set(TCL_VERSION
"${TCL_VERSION_MAJOR}.${TCL_VERSION_MINOR}.${TCL_VERSION_PATCH}")
# For Windows, we need the Resource Compiler language
-if(WIN32)
+if (WIN32)
enable_language(RC)
-endif(WIN32)
+endif (WIN32)
#-----------------------------------------------------------------------------
# Set CMake module path
@@ -104,45 +104,45 @@
# of these, but until then just do what's needed.
# Windows specific flags
-if(MSVC)
+if (MSVC)
add_definitions(-D_UNICODE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEP
-Ot -Oi -fp:strict -Gs -GS -GL -MD)
add_definitions(-DTCL_PIPE_DLL="tclpip${TCL_VERSION_MAJOR}${TCL_VERSION_MINOR}.dll")
add_definitions(-Dinline=__inline)
-endif(MSVC)
+endif (MSVC)
-if(MINGW)
+if (MINGW)
add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEP)
add_definitions(-DTCL_PIPE_DLL="tclpip${TCL_VERSION_MAJOR}${TCL_VERSION_MINOR}.dll")
add_definitions(-Dinline=__inline)
remove_definitions(-w)
add_definitions(-DHAVE_NO_SEH -DEXCEPTION_DISPOSITION=int)
-endif(MINGW)
+endif (MINGW)
-if(APPLE)
+if (APPLE)
add_definitions(-DMAC_OSX_TCL=1)
-endif(APPLE)
+endif (APPLE)
# Embedded configuration information, encoding to use for the values, TIP #59
-if(WIN32)
+if (WIN32)
add_definitions(-DTCL_CFGVAL_ENCODING="cp1252")
else(WIN32)
add_definitions(-DTCL_CFGVAL_ENCODING="iso8859-1")
-endif(WIN32)
+endif (WIN32)
#------------------------------------------------------------------------
# Options
#------------------------------------------------------------------------
option(TCL_COMPILATION_TRACING "Bytecode compilation debugging" OFF)
-if(TCL_COMPILATION_TRACING)
+if (TCL_COMPILATION_TRACING)
add_definitions(-DTCL_COMPILE_DEBUG=1)
else(TCL_COMPILATION_TRACING)
add_definitions(-DTCL_COMPILE_DEBUG=0)
-endif(TCL_COMPILATION_TRACING)
+endif (TCL_COMPILATION_TRACING)
option(TCL_COMPILE_STATS "Bytecode statistics" OFF)
-if(TCL_COMPILE_STATS)
+if (TCL_COMPILE_STATS)
add_definitions(-DTCL_COMPILE_STATS=1)
-endif(TCL_COMPILE_STATS)
+endif (TCL_COMPILE_STATS)
#------------------------------------------------------------------------
# Test compiler flags
@@ -152,9 +152,9 @@
# It makes compiling go faster. (This is only a performance feature.)
include(CheckCCompilerFlag)
check_c_compiler_flag(-pipe PIPE_COMPILER_FLAG)
-if(PIPE_COMPILER_FLAG)
+if (PIPE_COMPILER_FLAG)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pipe")
-endif(PIPE_COMPILER_FLAG)
+endif (PIPE_COMPILER_FLAG)
# Position independent code
check_c_compiler_flag(-fPIC FPIC_COMPILER_FLAG)
@@ -168,27 +168,27 @@
function(check_extra_pthread_funcs)
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
check_function_exists(pthread_mutex_init HAVE_PTHREAD_MUTEX_INIT)
- if(HAVE_PTHREAD_MUTEX_INIT)
+ if (HAVE_PTHREAD_MUTEX_INIT)
add_definitions(-DHAVE_PTHREAD_MUTEX_INIT=1)
- endif(HAVE_PTHREAD_MUTEX_INIT)
+ endif (HAVE_PTHREAD_MUTEX_INIT)
check_function_exists(pthread_attr_setstacksize
HAVE_PTHREAD_ATTR_SETSTACKSIZE)
- if(HAVE_PTHREAD_ATTR_SETSTACKSIZE)
+ if (HAVE_PTHREAD_ATTR_SETSTACKSIZE)
add_definitions(-DHAVE_PTHREAD_ATTR_SETSTACKSIZE=1)
- endif(HAVE_PTHREAD_ATTR_SETSTACKSIZE)
+ endif (HAVE_PTHREAD_ATTR_SETSTACKSIZE)
check_function_exists(pthread_atfork HAVE_PTHREAD_ATFORK)
- if(HAVE_PTHREAD_ATFORK)
+ if (HAVE_PTHREAD_ATFORK)
add_definitions(-DHAVE_PTHREAD_ATFORK=1)
- endif(HAVE_PTHREAD_ATFORK)
+ endif (HAVE_PTHREAD_ATFORK)
endfunction(check_extra_pthread_funcs)
find_package(Threads)
-if(NOT ${CMAKE_THREAD_LIBS_INIT} STREQUAL "")
+if (NOT ${CMAKE_THREAD_LIBS_INIT} STREQUAL "")
add_definitions(-DTCL_THREADS=1)
add_definitions(-DUSE_THREAD_ALLOC=1)
add_definitions(-D_REENTRANT=1)
add_definitions(-D_THREAD_SAFE=1)
check_extra_pthread_funcs()
-endif(NOT ${CMAKE_THREAD_LIBS_INIT} STREQUAL "")
+endif (NOT ${CMAKE_THREAD_LIBS_INIT} STREQUAL "")
#--------------------------------------------------------------------
# Header checks.
@@ -203,50 +203,50 @@
string(REPLACE "/" "_" var "${var}")
string(TOUPPER "${var}" var)
check_include_files(${filename} HAVE_${var})
- if(HAVE_${var})
- if(OPT_DEFVAR)
+ if (HAVE_${var})
+ if (OPT_DEFVAR)
set(CVAR ${OPT_DEFVAR})
else(OPT_DEFVAR)
set(CVAR HAVE_${var})
- endif(OPT_DEFVAR)
- if(OPT_USE)
+ endif (OPT_DEFVAR)
+ if (OPT_USE)
# Usability test requested - we're not done yet.
- if(OPT_TEST_SRC)
+ if (OPT_TEST_SRC)
check_c_source_compiles("${${OPT_TEST_SRC}}" ${var}_USABLE)
else(OPT_TEST_SRC)
check_c_source_compiles("#include <${filename}>\nint main() {return
0;}" ${var}_USABLE)
- endif(OPT_TEST_SRC)
- if(${var}_USABLE)
+ endif (OPT_TEST_SRC)
+ if (${var}_USABLE)
set(HAVE_${var} 1 PARENT_SCOPE)
set(${CVAR} 1 PARENT_SCOPE)
add_definitions(-D${CVAR}=1)
else(${var}_USABLE)
- if(OPT_NEG_FLAG)
+ if (OPT_NEG_FLAG)
add_definitions(-DNO_${var}=1)
- endif(OPT_NEG_FLAG)
- if(OPT_COMPAT_SRC)
+ endif (OPT_NEG_FLAG)
+ if (OPT_COMPAT_SRC)
set(USE_COMPAT 1 PARENT_SCOPE)
- if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC})
+ if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC})
message(FATAL_ERROR "Specified compatibilty file ${OPT_COMPAT_SRC},
but ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC} was not found.")
- endif(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC})
- endif(OPT_COMPAT_SRC)
- endif(${var}_USABLE)
+ endif (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC})
+ endif (OPT_COMPAT_SRC)
+ endif (${var}_USABLE)
else(OPT_USE)
set(HAVE_${var} 1 PARENT_SCOPE)
set(${CVAR} 1 PARENT_SCOPE)
add_definitions(-D${CVAR}=1)
- endif(OPT_USE)
+ endif (OPT_USE)
else(HAVE_${var})
- if(OPT_NEG_FLAG)
+ if (OPT_NEG_FLAG)
add_definitions(-DNO_${var}=1)
- endif(OPT_NEG_FLAG)
- if(OPT_COMPAT_SRC)
+ endif (OPT_NEG_FLAG)
+ if (OPT_COMPAT_SRC)
set(USE_COMPAT 1 PARENT_SCOPE)
- if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC})
+ if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC})
message(FATAL_ERROR "Specified compatibilty file ${OPT_COMPAT_SRC}, but
${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC} was not found.")
- endif(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC})
- endif(OPT_COMPAT_SRC)
- endif(HAVE_${var})
+ endif (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${OPT_COMPAT_SRC})
+ endif (OPT_COMPAT_SRC)
+ endif (HAVE_${var})
endfunction(Tcl_Check_Include_File)
set(DIRENT_TEST_SRCS "
@@ -319,38 +319,38 @@
cmake_parse_arguments(OPT "NEG_FLAG" "COMPAT_SRC;DEFVAR" "" ${ARGN})
string(TOUPPER "${fname}" var)
check_function_exists(${fname} HAVE_${var})
- if(HAVE_${var})
+ if (HAVE_${var})
set(HAVE_${var} 1 PARENT_SCOPE)
- if(OPT_DEFVAR)
+ if (OPT_DEFVAR)
set(CVAR ${OPT_DEFVAR})
else(OPT_DEFVAR)
set(CVAR HAVE_${var})
- endif(OPT_DEFVAR)
+ endif (OPT_DEFVAR)
# If we have a compat src file, there's no need for a flag -
# Tcl is ensuring this exists, so there's not source code level
# ifdef to satisfy.
- if(NOT OPT_COMPAT_SRC)
+ if (NOT OPT_COMPAT_SRC)
add_definitions(-D${CVAR}=1)
- endif(NOT OPT_COMPAT_SRC)
+ endif (NOT OPT_COMPAT_SRC)
else(HAVE_${var})
- if(OPT_NEG_FLAG)
+ if (OPT_NEG_FLAG)
add_definitions(-DNO_${var}=1)
- endif(OPT_NEG_FLAG)
- if(OPT_COMPAT_SRC)
+ endif (OPT_NEG_FLAG)
+ if (OPT_COMPAT_SRC)
set(COMPAT_SRCS "${COMPAT_SRCS}" ${OPT_COMPAT_SRC} PARENT_SCOPE)
- endif(OPT_COMPAT_SRC)
- endif(HAVE_${var})
+ endif (OPT_COMPAT_SRC)
+ endif (HAVE_${var})
endfunction(Tcl_Check_Function_Exists)
Tcl_Check_Function_Exists(getcwd)
-if(NOT HAVE_GETCWD)
+if (NOT HAVE_GETCWD)
Tcl_Check_Function_Exists(getwd HAVE_GETWD)
- if(NOT HAVE_GETWD)
+ if (NOT HAVE_GETWD)
add_definitions(-DNO_GETWD=1)
else(NOT HAVE_GETWD)
add_definitions(-DUSEGETWD=1)
- endif(NOT HAVE_GETWD)
-endif(NOT HAVE_GETCWD)
+ endif (NOT HAVE_GETWD)
+endif (NOT HAVE_GETCWD)
Tcl_Check_Function_Exists(hypot COMPAT_SRC compat/hypot.c)
Tcl_Check_Function_Exists(mkstemp COMPAT_SRC compat/mkstemp.c)
@@ -366,18 +366,18 @@
# Check for early Darwin version here - realpath
# is not threadsafe prior to Darwin 7
-if(${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$" AND HAVE_REALPATH)
+if (${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$" AND HAVE_REALPATH)
string(REGEX REPLACE "\\..*" "" CMAKE_SYSTEM_MAJOR_VERSION
${CMAKE_SYSTEM_VERSION})
- if(${CMAKE_SYSTEM_MAJOR_VERSION} LESS 7)
+ if (${CMAKE_SYSTEM_MAJOR_VERSION} LESS 7)
message("realpath is not threadsafe in Darwin versions prior to 7,
disabling")
set(HAVE_REALPATH)
remove_definitions(-DHAVE_REALPATH=1)
add_definitions(-DNO_REALPATH=1)
- endif(${CMAKE_SYSTEM_MAJOR_VERSION} LESS 7)
-endif(${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$" AND HAVE_REALPATH)
+ endif (${CMAKE_SYSTEM_MAJOR_VERSION} LESS 7)
+endif (${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$" AND HAVE_REALPATH)
Tcl_Check_Function_Exists(getaddrinfo HAVE_GETADDRINFO)
-if(HAVE_GETADDRINFO)
+if (HAVE_GETADDRINFO)
set(GETADDRINFO_SRC "
#include <netdb.h>
int main () {
@@ -389,10 +389,10 @@
}
")
CHECK_C_SOURCE_COMPILES("${GETADDRINFO_SRC}" WORKING_GETADDRINFO)
- if(WORKING_GETADDRINFO)
+ if (WORKING_GETADDRINFO)
add_definitions(-DHAVE_GETADDRINFO=1)
- endif(WORKING_GETADDRINFO)
-endif(HAVE_GETADDRINFO)
+ endif (WORKING_GETADDRINFO)
+endif (HAVE_GETADDRINFO)
#--------------------------------------------------------------------
# Library checks.
@@ -402,19 +402,19 @@
include(CheckCSourceCompiles)
check_library_exists(m cos "" HAVE_M_LIBRARY)
-if(HAVE_M_LIBRARY)
+if (HAVE_M_LIBRARY)
set(M_LIBRARY "m")
-endif(HAVE_M_LIBRARY)
+endif (HAVE_M_LIBRARY)
# Note: Do we ever NOT need CoreFoundation on OSX?
-if(APPLE)
+if (APPLE)
include(CMakeFindFrameworks)
cmake_find_frameworks(CoreFoundation)
- if(CoreFoundation_FRAMEWORKS)
+ if (CoreFoundation_FRAMEWORKS)
set(CoreFoundation_LIBRARIES "-framework CoreFoundation")
add_definitions(-DHAVE_COREFOUNDATION=1)
- endif(CoreFoundation_FRAMEWORKS)
-endif(APPLE)
+ endif (CoreFoundation_FRAMEWORKS)
+endif (APPLE)
# We're going to have zlib one way or the other - always define
# HAVE_ZLIB to be on.
@@ -424,9 +424,9 @@
# Need dynamic loading and unloading... always on until we find
# a case where we need to disable it.
check_library_exists(dl dlopen "" HAVE_DL_LIBRARY)
-if(HAVE_DL_LIBRARY)
+if (HAVE_DL_LIBRARY)
set(DL_LIBRARY "dl")
-endif(HAVE_DL_LIBRARY)
+endif (HAVE_DL_LIBRARY)
# Support unloading dlls
add_definitions(-DTCL_UNLOAD_DLLS=1)
@@ -434,101 +434,101 @@
#-----------------------------------------------------------
# There are a number of possibilities for sockets
Tcl_Check_Function_Exists(connect)
-if(HAVE_CONNECT)
+if (HAVE_CONNECT)
set(NEED_SOCKET_LIBRARY 0)
else(HAVE_CONNECT)
set(NEED_SOCKET_LIBRARY 1)
-endif(HAVE_CONNECT)
+endif (HAVE_CONNECT)
# Checking for socket
-if(NEED_SOCKET_LIBRARY)
+if (NEED_SOCKET_LIBRARY)
check_library_exists(socket conect "" HAVE_SOCKET_LIBRARY)
- if(HAVE_SOCKET_LIBRARY)
+ if (HAVE_SOCKET_LIBRARY)
set(SOCKET_LIBRARY "socket")
set(NEED_SOCKET_LIBRARY 0)
- endif(HAVE_SOCKET_LIBRARY)
-endif(NEED_SOCKET_LIBRARY)
+ endif (HAVE_SOCKET_LIBRARY)
+endif (NEED_SOCKET_LIBRARY)
# Checking for inet
-if(NEED_SOCKET_LIBRARY)
+if (NEED_SOCKET_LIBRARY)
check_library_exists(inet main "" HAVE_INET_LIBRARY)
- if(HAVE_INET_LIBRARY)
+ if (HAVE_INET_LIBRARY)
set(SOCKET_LIBRARY "inet")
set(NEED_SOCKET_LIBRARY 0)
- endif(HAVE_INET_LIBRARY)
-endif(NEED_SOCKET_LIBRARY)
+ endif (HAVE_INET_LIBRARY)
+endif (NEED_SOCKET_LIBRARY)
#-----------------------------------------------------------
# gethostbyname
Tcl_Check_Function_Exists(gethostbyname)
-if(HAVE_GETHOSTBYNAME)
+if (HAVE_GETHOSTBYNAME)
set(NEED_GHBN_LIBRARY 0)
else(HAVE_GETHOSTBYNAME)
set(NEED_GHBN_LIBRARY 1)
-endif(HAVE_GETHOSTBYNAME)
+endif (HAVE_GETHOSTBYNAME)
-if(NEED_GHBN_LIBRARY)
+if (NEED_GHBN_LIBRARY)
check_library_exists(nsl gethostbyname "" HAVE_NSL_LIBRARY)
- if(HAVE_INET_LIBRARY)
+ if (HAVE_INET_LIBRARY)
set(GHBN_LIBRARY "inet")
set(NEED_GHBN_LIBRARY 0)
- endif(HAVE_INET_LIBRARY)
-endif(NEED_GHBN_LIBRARY)
+ endif (HAVE_INET_LIBRARY)
+endif (NEED_GHBN_LIBRARY)
#--------------------------------------------------------------------
# 64 bit
#--------------------------------------------------------------------
function(tcl_check_c_flag flag VAR)
- if(NOT DEFINED ${VAR})
+ if (NOT DEFINED ${VAR})
string(TOUPPER ${flag} UPPER_FLAG)
string(REGEX REPLACE " " "_" UPPER_FLAG ${UPPER_FLAG})
string(REGEX REPLACE "=" "_" UPPER_FLAG ${UPPER_FLAG})
check_c_compiler_flag(-${flag} ${UPPER_FLAG}_COMPILER_FLAG)
- if(${UPPER_FLAG}_COMPILER_FLAG)
+ if (${UPPER_FLAG}_COMPILER_FLAG)
set(${VAR} "-${flag}" PARENT_SCOPE)
- endif(${UPPER_FLAG}_COMPILER_FLAG)
- endif(NOT DEFINED ${VAR})
+ endif (${UPPER_FLAG}_COMPILER_FLAG)
+ endif (NOT DEFINED ${VAR})
endfunction(tcl_check_c_flag flag VAR)
-if(${CMAKE_SIZEOF_VOID_P} MATCHES "^8$" OR CMAKE_CL_64)
- if(NOT DEFINED 64BIT_FLAG)
+if (${CMAKE_SIZEOF_VOID_P} MATCHES "^8$" OR CMAKE_CL_64)
+ if (NOT DEFINED 64BIT_FLAG)
tcl_check_c_flag("arch x86_64" 64BIT_FLAG)
tcl_check_c_flag("64" 64BIT_FLAG)
tcl_check_c_flag("mabi=64" 64BIT_FLAG)
tcl_check_c_flag("m64" 64BIT_FLAG)
tcl_check_c_flag("q64" 64BIT_FLAG)
- endif(NOT DEFINED 64BIT_FLAG)
- if(CMAKE_CL_64)
+ endif (NOT DEFINED 64BIT_FLAG)
+ if (CMAKE_CL_64)
add_definitions(-D_stati64=_stat64)
- endif(CMAKE_CL_64)
-endif(${CMAKE_SIZEOF_VOID_P} MATCHES "^8$" OR CMAKE_CL_64)
+ endif (CMAKE_CL_64)
+endif (${CMAKE_SIZEOF_VOID_P} MATCHES "^8$" OR CMAKE_CL_64)
#--------------------------------------------------------------------
# optimization and debugging
#--------------------------------------------------------------------
check_c_compiler_flag(-g HAVE_G_FLAG)
-if(HAVE_G_FLAG)
+if (HAVE_G_FLAG)
add_definitions(-DTCL_CFG_DEBUG=1)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g")
-endif(HAVE_G_FLAG)
+endif (HAVE_G_FLAG)
check_c_compiler_flag(-O2 HAVE_O2_FLAG)
-if(HAVE_O2_FLAG)
+if (HAVE_O2_FLAG)
add_definitions(-DTCL_CFG_OPTIMIZED=1)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2")
-endif(HAVE_O2_FLAG)
+endif (HAVE_O2_FLAG)
#--------------------------------------------------------------------
# Check endianness because we can optimize comparisons of
# Tcl_UniChar strings to memcmp on big-endian systems.
#--------------------------------------------------------------------
-if(NOT WIN32)
+if (NOT WIN32)
include(TestBigEndian)
test_big_endian(WORDS_BIGENDIAN)
- if(WORDS_BIGENDIAN)
+ if (WORDS_BIGENDIAN)
add_definitions(-DWORDS_BIGENDIAN=1)
- endif(WORDS_BIGENDIAN)
-endif(NOT WIN32)
+ endif (WORDS_BIGENDIAN)
+endif (NOT WIN32)
#--------------------------------------------------------------------
# If we ended up enabling threads, look for thread safe variations
@@ -536,24 +536,24 @@
function(tcl_5_4_arg_functest func srcs5 srcs4)
string(TOUPPER "${func}" UPPERFUNC)
Tcl_Check_Function_Exists(${func})
- if(HAVE_${UPPERFUNC})
+ if (HAVE_${UPPERFUNC})
set(HAVE_${UPPERFUNC} 1 PARENT_SCOPE)
# Do we have the 5 arg or the 4 arg version?
check_c_source_compiles("${${srcs5}}" HAVE_${UPPERFUNC}_5)
- if(HAVE_${UPPERFUNC}_5)
+ if (HAVE_${UPPERFUNC}_5)
set(HAVE_${UPPERFUNC}_5 1 PARENT_SCOPE)
add_definitions(-DHAVE_${UPPERFUNC}_5=1)
else(HAVE_${UPPERFUNC}_5)
check_c_source_compiles("${${srcs4}}" HAVE_${UPPERFUNC}_4)
- if(HAVE_${UPPERFUNC}_4)
+ if (HAVE_${UPPERFUNC}_4)
set(HAVE_${UPPERFUNC}_4 1 PARENT_SCOPE)
add_definitions(-DHAVE_${UPPERFUNC}_4=1)
- endif(HAVE_${UPPERFUNC}_4)
- endif(HAVE_${UPPERFUNC}_5)
- endif(HAVE_${UPPERFUNC})
+ endif (HAVE_${UPPERFUNC}_4)
+ endif (HAVE_${UPPERFUNC}_5)
+ endif (HAVE_${UPPERFUNC})
endfunction(tcl_5_4_arg_functest)
-if(NOT ${CMAKE_THREAD_LIBS_INIT} STREQUAL "")
+if (NOT ${CMAKE_THREAD_LIBS_INIT} STREQUAL "")
#------------------------------------------------------------------
# getpwuid_r
@@ -663,17 +663,17 @@
return 0;}
")
Tcl_Check_Function_Exists(gethostbyaddr_r)
- if(HAVE_GETHOSTBYADDR_R)
+ if (HAVE_GETHOSTBYADDR_R)
check_c_source_compiles("${gethostbyaddr_r_7_src}" HAVE_GETHOSTBYADDR_R_7)
- if(HAVE_GETHOSTBYADDR_R_7)
+ if (HAVE_GETHOSTBYADDR_R_7)
add_definitions(-DHAVE_GETHOSTBYADDR_R_7=1)
else(HAVE_GETHOSTBYADDR_R_7)
check_c_source_compiles("${gethostbyaddr_r_8_src}"
HAVE_GETHOSTBYADDR_R_8)
- if(HAVE_GETHOSTBYADDR_R_8)
+ if (HAVE_GETHOSTBYADDR_R_8)
add_definitions(-DHAVE_GETHOSTBYADDR_R_8=1)
- endif(HAVE_GETHOSTBYADDR_R_8)
- endif(HAVE_GETHOSTBYADDR_R_7)
- endif(HAVE_GETHOSTBYADDR_R)
+ endif (HAVE_GETHOSTBYADDR_R_8)
+ endif (HAVE_GETHOSTBYADDR_R_7)
+ endif (HAVE_GETHOSTBYADDR_R)
#------------------------------------------------------------------
# gethostbyname_r
@@ -701,34 +701,34 @@
return 0;}
")
Tcl_Check_Function_Exists(gethostbyname_r)
- if(HAVE_GETHOSTBYNAME_R)
+ if (HAVE_GETHOSTBYNAME_R)
check_c_source_compiles("${gethostbyname_r_6_src}" HAVE_GETHOSTBYNAME_R_6)
- if(HAVE_GETHOSTBYNAME_R_6)
+ if (HAVE_GETHOSTBYNAME_R_6)
add_definitions(-DHAVE_GETHOSTBYNAME_R_6=1)
else(HAVE_GETHOSTBYNAME_R_6)
check_c_source_compiles("${gethostbyname_r_5_src}"
HAVE_GETHOSTBYNAME_R_5)
- if(HAVE_GETHOSTBYNAME_R_5)
+ if (HAVE_GETHOSTBYNAME_R_5)
add_definitions(-DHAVE_GETHOSTBYNAME_R_5=1)
else(HAVE_GETHOSTBYNAME_R_5)
check_c_source_compiles("${gethostbyname_r_3_src}"
HAVE_GETHOSTBYNAME_R_3)
- if(HAVE_GETHOSTBYNAME_R_3)
+ if (HAVE_GETHOSTBYNAME_R_3)
add_definitions(-DHAVE_GETHOSTBYNAME_R_3=1)
- endif(HAVE_GETHOSTBYNAME_R_3)
- endif(HAVE_GETHOSTBYNAME_R_5)
- endif(HAVE_GETHOSTBYNAME_R_6)
- endif(HAVE_GETHOSTBYNAME_R)
+ endif (HAVE_GETHOSTBYNAME_R_3)
+ endif (HAVE_GETHOSTBYNAME_R_5)
+ endif (HAVE_GETHOSTBYNAME_R_6)
+ endif (HAVE_GETHOSTBYNAME_R)
# Darwin srcs take extra flags (TODO - is this still needed in 8.6?)
- if(${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
+ if (${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
string(REGEX REPLACE "\\..*" "" CMAKE_SYSTEM_MAJOR_VERSION
${CMAKE_SYSTEM_VERSION})
- if(${CMAKE_SYSTEM_MAJOR_VERSION} GREATER 5)
+ if (${CMAKE_SYSTEM_MAJOR_VERSION} GREATER 5)
add_definitions(-DHAVE_MTSAFE_GETHOSTBYNAME=1)
add_definitions(-DHAVE_MTSAFE_GETHOSTBYADDR=1)
- endif(${CMAKE_SYSTEM_MAJOR_VERSION} GREATER 5)
- endif(${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
+ endif (${CMAKE_SYSTEM_MAJOR_VERSION} GREATER 5)
+ endif (${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
-endif(NOT ${CMAKE_THREAD_LIBS_INIT} STREQUAL "")
+endif (NOT ${CMAKE_THREAD_LIBS_INIT} STREQUAL "")
#--------------------------------------------------------------------
include("${CMAKE_CURRENT_SOURCE_DIR}/CMake/tcl.cmake")
@@ -745,9 +745,9 @@
TCL_CHECK_STRUCT_HAS_MEMBER("struct stat" st_blocks sys/stat.h
HAVE_STRUCT_STAT_ST_BLOCKS)
TCL_CHECK_STRUCT_HAS_MEMBER("struct stat" st_blksize sys/stat.h
HAVE_STRUCT_STAT_ST_BLKSIZE)
CHECK_TYPE_SIZE(blkcnt_t HAVE_BLKCNT_T)
-IF(HAVE_BLKCNT_T)
+if (HAVE_BLKCNT_T)
add_definitions(-DHAVE_BLKCNT_T=1)
-ENDIF(HAVE_BLKCNT_T)
+endif (HAVE_BLKCNT_T)
#---------------------------------------------------------------------------
# Check for memmove
@@ -754,13 +754,13 @@
#---------------------------------------------------------------------------
# need to revisit this, not finding memmove
#TCL_CHECK_FUNCTION_EXISTS(memmove HAVE_MEMMOVE)
-#IF(NOT HAVE_MEMMOVE)
+#if (NOT HAVE_MEMMOVE)
# add_definitions(-DNO_MEMMOVE=1)
# TCL_CHECK_INCLUDE_FILE(string.h HAVE_STRING_H)
-# IF(NOT HAVE_STRING_H)
+# if (NOT HAVE_STRING_H)
# add_definitions(-DNO_STRING_H=1)
-# ENDIF(NOT HAVE_STRING_H)
-#ENDIF(NOT HAVE_MEMMOVE)
+# endif (NOT HAVE_STRING_H)
+#endif (NOT HAVE_MEMMOVE)
#--------------------------------------------------------------------
# Check for various typedefs and provide substitutes if
@@ -775,37 +775,37 @@
TCL_CHECK_TYPE_SIZE(intptr_t HAVE_INTPTR)
TCL_CHECK_TYPE_SIZE(uintptr_t HAVE_UINTPTR)
-IF(NOT HAVE_OPENDIR)
+if (NOT HAVE_OPENDIR)
add_definitions(-DUSE_DIRENT2_H=1)
-ENDIF(NOT HAVE_OPENDIR)
+endif (NOT HAVE_OPENDIR)
#----------------------------------------------------------------------------
# Check for strncasecmp
#----------------------------------------------------------------------------
CHECK_FUNCTION_EXISTS(strncasecmp HAVE_STRNCASECMP)
-IF(NOT HAVE_STRNCASECMP)
+if (NOT HAVE_STRNCASECMP)
CHECK_LIBRARY_EXISTS(socket strncasecmp "" HAVE_SOCKET_STRNCASECMP)
CHECK_LIBRARY_EXISTS(inet strncasecmp "" HAVE_INET_STRNCASECMP)
- IF(NOT HAVE_SOCKET_STRNCASECMP AND NOT HAVE_INET_STRNCASECMP)
- SET(COMPAT_SRCS ${COMPAT_SRCS} compat/strncasecmp.c)
- ENDIF(NOT HAVE_SOCKET_STRNCASECMP AND NOT HAVE_INET_STRNCASECMP)
-ENDIF(NOT HAVE_STRNCASECMP)
+ if (NOT HAVE_SOCKET_STRNCASECMP AND NOT HAVE_INET_STRNCASECMP)
+ set(COMPAT_SRCS ${COMPAT_SRCS} compat/strncasecmp.c)
+ endif (NOT HAVE_SOCKET_STRNCASECMP AND NOT HAVE_INET_STRNCASECMP)
+endif (NOT HAVE_STRNCASECMP)
#----------------------------------------------------------------------------
# gettimeofday issues
#----------------------------------------------------------------------------
TCL_CHECK_FUNCTION_EXISTS(BSDgettimeofday HAVE_BSDGETTIMEOFDAY)
-IF(NOT HAVE_BSDGETTIMEOFDAY)
+if (NOT HAVE_BSDGETTIMEOFDAY)
CHECK_FUNCTION_EXISTS(gettimeofday HAVE_GETTIMEOFDAY)
- IF(NOT HAVE_GETTIMEOFDAY)
+ if (NOT HAVE_GETTIMEOFDAY)
add_definitions(-DNO_GETTOD=1)
- ENDIF(NOT HAVE_GETTIMEOFDAY)
-ENDIF(NOT HAVE_BSDGETTIMEOFDAY)
+ endif (NOT HAVE_GETTIMEOFDAY)
+endif (NOT HAVE_BSDGETTIMEOFDAY)
INCLUDE(CheckSymbolExists)
CHECK_SYMBOL_EXISTS(gettimeofday "sys/time.h" IS_GETTOD_DECLARED)
-IF(NOT IS_GETTOD_DECLARED)
+if (NOT IS_GETTOD_DECLARED)
add_definitions(-DGETTOD_NOT_DECLARED=1)
-ENDIF(NOT IS_GETTOD_DECLARED)
+endif (NOT IS_GETTOD_DECLARED)
#----------------------------------------------------------------------------
@@ -812,7 +812,7 @@
# signed/unsigned char - does the Tcl code still need this? See
# http://lists.gnu.org/archive/html/autoconf/2008-06/msg00054.html
#----------------------------------------------------------------------------
-SET(unsigned_char_srcs "
+set(unsigned_char_srcs "
int main () {
static int test_array [1 - 2 * !(((char) -1) < 0)];
test_array [0] = 0;
@@ -819,13 +819,13 @@
return 0;
}
")
-if(NOT DEFINED CHAR_IS_UNSIGNED)
+if (NOT DEFINED CHAR_IS_UNSIGNED)
CHECK_C_SOURCE_RUNS("${unsigned_char_srcs}" CHAR_IS_UNSIGNED)
-endif(NOT DEFINED CHAR_IS_UNSIGNED)
-IF(CHAR_IS_UNSIGNED)
+endif (NOT DEFINED CHAR_IS_UNSIGNED)
+if (CHAR_IS_UNSIGNED)
add_definitions(-D__CHAR_UNSIGNED__)
-ENDIF(CHAR_IS_UNSIGNED)
-SET(signed_char_srcs "
+endif (CHAR_IS_UNSIGNED)
+set(signed_char_srcs "
int main () {
signed char *p;
p = 0;
@@ -833,9 +833,9 @@
}
")
CHECK_C_SOURCE_COMPILES("${signed_char_srcs}" HAVE_SIGNED_CHAR)
-IF(HAVE_SIGNED_CHAR)
+if (HAVE_SIGNED_CHAR)
add_definitions(-DHAVE_SIGNED_CHAR=1)
-ENDIF(HAVE_SIGNED_CHAR)
+endif (HAVE_SIGNED_CHAR)
#--------------------------------------------------------------------
# Check for chflags and mkstemps
@@ -844,7 +844,7 @@
#--------------------------------------------------------------------
# Check for support of isnan() function or macro
#--------------------------------------------------------------------
-SET(isnan_srcs "
+set(isnan_srcs "
#include <math.h>
int main () {
isnan(0.0); /* Generates an error if isnan is missing */
@@ -851,17 +851,17 @@
return 0;
}
")
-if(NOT DEFINED USABLE_ISNAN)
+if (NOT DEFINED USABLE_ISNAN)
CHECK_C_SOURCE_RUNS("${isnan_srcs}" USABLE_ISNAN)
-endif(NOT DEFINED USABLE_ISNAN)
-IF(NOT USABLE_ISNAN)
+endif (NOT DEFINED USABLE_ISNAN)
+if (NOT USABLE_ISNAN)
add_definitions(-DNO_ISNAN=1)
-ENDIF(NOT USABLE_ISNAN)
+endif (NOT USABLE_ISNAN)
#----------------------------------------------------------------------------
# Darwin specific API checks and defines
#--------------------------------------------------------------------
-IF(${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
+if (${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
TCL_CHECK_FUNCTION_EXISTS(getattrlist HAVE_GETATTRLIST)
TCL_CHECK_INCLUDE_FILE(copyfile.h HAVE_COPYFILE_H)
TCL_CHECK_FUNCTION_EXISTS(copyfile HAVE_COPYFILE)
@@ -871,11 +871,11 @@
add_definitions(-DTCL_DEFAULT_ENCODING="utf-8")
add_definitions(-DTCL_LOAD_FROM_MEMORY=1)
add_definitions(-DTCL_WIDE_CLICKS=1)
- IF(HAVE_AVAILABILITYMACROS_H)
+ if (HAVE_AVAILABILITYMACROS_H)
add_definitions(-DHAVE_AVAILABILITYMACROS_H=1)
- SET(WEAK_IMPORT_SRCS "
+ set(WEAK_IMPORT_SRCS "
#ifdef __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1020
#error __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1020
@@ -890,11 +890,11 @@
}
")
CHECK_C_SOURCE_COMPILES("${WEAK_IMPORT_SRCS}" WEAK_IMPORT_WORKING)
- IF(WEAK_IMPORT_WORKING)
+ if (WEAK_IMPORT_WORKING)
add_definitions(-DHAVE_WEAK_IMPORT=1)
- ENDIF(WEAK_IMPORT_WORKING)
+ endif (WEAK_IMPORT_WORKING)
- SET(SUSV3_SRCS "
+ set(SUSV3_SRCS "
#ifdef __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1050
#error __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1050
@@ -908,17 +908,17 @@
int main () {return 0;}
")
CHECK_C_SOURCE_COMPILES("${SUSV3_SRCS}" SUSV3_WORKING)
- IF(SUSV3_WORKING)
+ if (SUSV3_WORKING)
add_definitions(-D_DARWIN_C_SOURCE=1)
- ENDIF(SUSV3_WORKING)
+ endif (SUSV3_WORKING)
- ENDIF(HAVE_AVAILABILITYMACROS_H)
-ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
+ endif (HAVE_AVAILABILITYMACROS_H)
+endif (${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
#--------------------------------------------------------------------
# Check for support of fts functions (readdir replacement)
#--------------------------------------------------------------------
-SET(FTS_SRCS "
+set(FTS_SRCS "
#include <sys/param.h>
#include <sys/stat.h>
#include <fts.h>
@@ -931,9 +931,9 @@
}
")
CHECK_C_SOURCE_COMPILES("${FTS_SRCS}" FTS_WORKING)
-IF(FTS_WORKING)
+if (FTS_WORKING)
add_definitions(-DHAVE_FTS=1)
-ENDIF(FTS_WORKING)
+endif (FTS_WORKING)
# TODO SC_BLOCKING_STYLE is for older systems, do we still need it?
@@ -942,22 +942,22 @@
# to be installed by Tcl. The default is autodetection, but can
# be overriden on the configure command line either way.
#------------------------------------------------------------------------
-IF(TCL_TIMEZONE_DATA)
- IF(${TCL_TIMEZONE_DATA} STREQUAL "")
- SET(TCL_TIMEZONE_DATA "AUTO" CACHE STRING "Use Tcl's local timezone data")
- ENDIF(${TCL_TIMEZONE_DATA} STREQUAL "")
-ELSE(TCL_TIMEZONE_DATA)
- SET(TCL_TIMEZONE_DATA "AUTO" CACHE STRING "Use Tcl's local timezone data")
-ENDIF(TCL_TIMEZONE_DATA)
-IF(${TCL_TIMEZONE_DATA} STREQUAL "AUTO")
- SET(LOCAL_TZ_DATA OFF)
+if (TCL_TIMEZONE_DATA)
+ if (${TCL_TIMEZONE_DATA} STREQUAL "")
+ set(TCL_TIMEZONE_DATA "AUTO" CACHE STRING "Use Tcl's local timezone data")
+ endif (${TCL_TIMEZONE_DATA} STREQUAL "")
+else (TCL_TIMEZONE_DATA)
+ set(TCL_TIMEZONE_DATA "AUTO" CACHE STRING "Use Tcl's local timezone data")
+endif (TCL_TIMEZONE_DATA)
+if (${TCL_TIMEZONE_DATA} STREQUAL "AUTO")
+ set(LOCAL_TZ_DATA OFF)
find_package(TIMEZONE)
- IF(NOT TIMEZONE_FOUND)
- SET(LOCAL_TZ_DATA ON)
- ENDIF(NOT TIMEZONE_FOUND)
-ELSE(${TCL_TIMEZONE_DATA} STREQUAL "AUTO")
- SET(LOCAL_TZ_DATA ${TCL_TIMEZONE_DATA})
-ENDIF(${TCL_TIMEZONE_DATA} STREQUAL "AUTO")
+ if (NOT TIMEZONE_FOUND)
+ set(LOCAL_TZ_DATA ON)
+ endif (NOT TIMEZONE_FOUND)
+else (${TCL_TIMEZONE_DATA} STREQUAL "AUTO")
+ set(LOCAL_TZ_DATA ${TCL_TIMEZONE_DATA})
+endif (${TCL_TIMEZONE_DATA} STREQUAL "AUTO")
#--------------------------------------------------------------------
# DTrace support
@@ -967,16 +967,16 @@
#--------------------------------------------------------------------
# Does the C stack grow upwards or downwards? Or cross-compiling?
#--------------------------------------------------------------------
-SET(C_STACK_SRC "
+set(C_STACK_SRC "
int StackGrowsUp(int *parent) { int here; return (&here < parent); }
int main (int argc, char *argv[]) { int foo; return StackGrowsUp(&foo); }
")
-if(NOT DEFINED STACK_GROWS_UP)
+if (NOT DEFINED STACK_GROWS_UP)
CHECK_C_SOURCE_RUNS("${C_STACK_SRC}" STACK_GROWS_UP)
-endif(NOT DEFINED STACK_GROWS_UP)
-IF(STACK_GROWS_UP)
+endif (NOT DEFINED STACK_GROWS_UP)
+if (STACK_GROWS_UP)
add_definitions(-DTCL_STACK_GROWS_UP=1)
-ENDIF(STACK_GROWS_UP)
+endif (STACK_GROWS_UP)
CHECK_FD_SET_IN_TYPES_D()
@@ -986,20 +986,20 @@
# TODO
# If we collected any compat sources, pass the flag
-IF(COMPAT_SRCS OR USE_COMPAT)
+if (COMPAT_SRCS OR USE_COMPAT)
add_definitions(-DUSE_COMPAT=1)
-ENDIF(COMPAT_SRCS OR USE_COMPAT)
+endif (COMPAT_SRCS OR USE_COMPAT)
-IF(APPLE)
+if (APPLE)
# Now that all the tests are done, configure the tclConfig.h file:
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/unix/tclConfig.h.in
${TCL_BINARY_DIR}/include/tclConfig.h)
-ENDIF(APPLE)
+endif (APPLE)
#--------------------------------------------------------------------
# At a minimum, this is needed for init.tcl setup
ADD_SUBDIRECTORY(library)
-SET(TCL_GENERIC_SRCS
+set(TCL_GENERIC_SRCS
generic/regcomp.c
generic/regexec.c
generic/regfree.c
@@ -1080,7 +1080,7 @@
generic/tclTomMathInterface.c
)
-SET(TCL_TEST_SRCS
+set(TCL_TEST_SRCS
generic/tclTest.c
generic/tclThreadTest.c
unix/tclUnixTest.c
@@ -1088,9 +1088,9 @@
win/tclWinTest.c
)
-IF(TCL_TOMMATH)
- SET(TCL_GENERIC_SRCS ${TCL_GENERIC_SRCS} generic/tclTomMathInterface.c)
-ENDIF(TCL_TOMMATH)
+if (TCL_TOMMATH)
+ set(TCL_GENERIC_SRCS ${TCL_GENERIC_SRCS} generic/tclTomMathInterface.c)
+endif (TCL_TOMMATH)
SET_PROPERTY(SOURCE generic/tclPkgConfig.c APPEND PROPERTY COMPILE_DEFINITIONS
CFG_INSTALL_LIBDIR="${CMAKE_INSTALL_PREFIX}/lib")
SET_PROPERTY(SOURCE generic/tclPkgConfig.c APPEND PROPERTY COMPILE_DEFINITIONS
CFG_INSTALL_BINDIR="${CMAKE_INSTALL_PREFIX}/bin")
@@ -1104,7 +1104,7 @@
SET_PROPERTY(SOURCE generic/tclPkgConfig.c APPEND PROPERTY COMPILE_DEFINITIONS
CFG_RUNTIME_DOCDIR="${CMAKE_INSTALL_PREFIX}/share/man")
-SET(TCL_OO_SRCS
+set(TCL_OO_SRCS
generic/tclOO.c
generic/tclOOBasic.c
generic/tclOOCall.c
@@ -1115,13 +1115,13 @@
)
-SET(TCL_STUB_SRCS
+set(TCL_STUB_SRCS
generic/tclStubLib.c
generic/tclTomMathStubLib.c
generic/tclOOStubLib.c
)
-SET(TCL_TOMMATH_SRCS
+set(TCL_TOMMATH_SRCS
libtommath/bn_s_mp_reverse.c
libtommath/bn_s_mp_mul_digs_fast.c
libtommath/bn_s_mp_sqr_fast.c
@@ -1187,13 +1187,13 @@
libtommath/tommath_private.h
)
-SET(TCL_OSX_SRCS
+set(TCL_OSX_SRCS
macosx/tclMacOSXBundle.c
macosx/tclMacOSXFCmd.c
macosx/tclMacOSXNotify.c
)
-SET(TCL_WIN_SRCS
+set(TCL_WIN_SRCS
win/tcl.rc
win/tclAppInit.c
win/tclWin32Dll.c
@@ -1221,9 +1221,8 @@
set_property(SOURCE win/tclMainUNICODE.c APPEND PROPERTY COMPILE_DEFINITIONS
TCL_UNICODE)
set_property(SOURCE win/tclAppInit.c APPEND PROPERTY COMPILE_DEFINITIONS
TCL_UNICODE)
-SET(TCL_UNIX_SRCS
+set(TCL_UNIX_SRCS
unix/tclAppInit.c
- unix/tclLoadDl.c
unix/tclUnixChan.c
unix/tclUnixCompat.c
unix/tclUnixEvent.c
@@ -1240,38 +1239,30 @@
SET_PROPERTY(SOURCE unix/tclUnixInit.c APPEND PROPERTY COMPILE_DEFINITIONS
TCL_LIBRARY="${CMAKE_INSTALL_PREFIX}/${LIB_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}tcl${TCL_VERSION_MAJOR}.${TCL_VERSION_MINOR}${CMAKE_SHARED_LIBRARY_SUFFIX}")
SET_PROPERTY(SOURCE unix/tclUnixInit.c APPEND PROPERTY COMPILE_DEFINITIONS
TCL_PACKAGE_PATH="${CMAKE_INSTALL_PREFIX}/lib")
-SET(TCL_NOTIFY_SRCS
+set(TCL_NOTIFY_SRCS
unix/tclUnixNotfy.c
)
-SET(TCL_DL_SRCS
- unix/tclLoadAix.c
- unix/tclLoadDl.c
- unix/tclLoadDyld.c
- generic/tclLoadNone.c
- unix/tclLoadOSF.c
- unix/tclLoadShl.c
- )
-SET(TCL_SRCS ${TCL_GENERIC_SRCS} ${TCL_OO_SRCS} ${TCL_TOMMATH_SRCS}
${TCL_STUB_SRCS})
-IF(WIN32)
- SET(TCL_SRCS ${TCL_SRCS} ${TCL_WIN_SRCS})
-ELSE(WIN32)
- SET(TCL_SRCS ${TCL_SRCS} ${TCL_NOTIFY_SRCS} ${TCL_UNIX_SRCS})
- IF(APPLE)
- SET(TCL_SRCS ${TCL_SRCS} ${TCL_OSX_SRCS} unix/tclLoadDyld.c)
- ENDIF(APPLE)
- IF(NOT APPLE)
- SET(TCL_SRCS ${TCL_SRCS} unix/tclLoadDl.c)
- ENDIF(NOT APPLE)
-ENDIF(WIN32)
+set(TCL_SRCS ${TCL_GENERIC_SRCS} ${TCL_OO_SRCS} ${TCL_TOMMATH_SRCS}
${TCL_STUB_SRCS})
+if (WIN32)
+ set(TCL_SRCS ${TCL_SRCS} ${TCL_WIN_SRCS})
+else (WIN32)
+ set(TCL_SRCS ${TCL_SRCS} ${TCL_NOTIFY_SRCS} ${TCL_UNIX_SRCS})
+ if (APPLE)
+ set(TCL_SRCS ${TCL_SRCS} ${TCL_OSX_SRCS} unix/tclLoadDyld.c)
+ endif (APPLE)
+ if (NOT APPLE)
+ set(TCL_SRCS ${TCL_SRCS} unix/tclLoadDl.c)
+ endif (NOT APPLE)
+endif (WIN32)
-SET(TCL_INCLUDE_PATH ${TCL_SOURCE_DIR}/generic ${TCL_SOURCE_DIR}/libtommath
${TCL_BINARY_DIR}/include)
-IF(WIN32)
- SET(TCL_INCLUDE_PATH ${TCL_SOURCE_DIR}/win ${TCL_INCLUDE_PATH})
-ELSE(WIN32)
- SET(TCL_INCLUDE_PATH ${TCL_INCLUDE_PATH} ${TCL_SOURCE_DIR}/unix)
-ENDIF(WIN32)
+set(TCL_INCLUDE_PATH ${TCL_SOURCE_DIR}/generic ${TCL_SOURCE_DIR}/libtommath
${TCL_BINARY_DIR}/include)
+if (WIN32)
+ set(TCL_INCLUDE_PATH ${TCL_SOURCE_DIR}/win ${TCL_INCLUDE_PATH})
+else (WIN32)
+ set(TCL_INCLUDE_PATH ${TCL_INCLUDE_PATH} ${TCL_SOURCE_DIR}/unix)
+endif (WIN32)
include_directories(
${TCL_INCLUDE_PATH}
@@ -1304,19 +1295,19 @@
LIBRARY DESTINATION ${LIB_DIR}
ARCHIVE DESTINATION ${LIB_DIR})
set_target_properties(tcl PROPERTIES VERSION ${TCL_VERSION} SOVERSION
${TCL_VERSION_MAJOR}.${TCL_VERSION_MINOR})
-IF(${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
+if (${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
set_target_properties(tcl PROPERTIES LINK_FLAGS "-compatibility_version
${TCL_VERSION_MAJOR}.${TCL_VERSION_MINOR} -current_version ${TCL_VERSION}
-install_name \"$<TARGET_FILE>\" -seg1addr 0xa000000 -sectcreate __TEXT
__info_plist \"${TCL_BINARY_DIR}/Tcl-Info.plist\"")
set(EXTRA_TCLSH_LIBS "-sectcreate __TEXT __info_plist
\"${TCL_BINARY_DIR}/Tclsh-Info.plist\"")
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/macosx/Tcl-Info.plist.in
${TCL_BINARY_DIR}/Tcl-Info.plist)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/macosx/Tclsh-Info.plist.in
${TCL_BINARY_DIR}/Tclsh-Info.plist)
-ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
+endif (${CMAKE_SYSTEM_NAME} MATCHES "^Darwin$")
add_library(tclstub STATIC ${TCL_STUB_SRCS})
target_link_libraries(tclstub ${TCL_LINK_LIBS})
-if(FPIC_COMPILER_FLAG)
+if (FPIC_COMPILER_FLAG)
set_target_properties(tclstub PROPERTIES COMPILE_FLAGS "-fPIC")
-endif(FPIC_COMPILER_FLAG)
+endif (FPIC_COMPILER_FLAG)
install(TARGETS tclstub
RUNTIME DESTINATION ${BIN_DIR}
LIBRARY DESTINATION ${LIB_DIR}
@@ -1323,11 +1314,11 @@
ARCHIVE DESTINATION ${LIB_DIR})
-IF(WIN32)
+if (WIN32)
set(TCLSH_SRCS win/tclAppInit.c win/tclsh.rc)
-ELSE(WIN32)
- SET(TCLSH_SRCS unix/tclAppInit.c)
-ENDIF(WIN32)
+else (WIN32)
+ set(TCLSH_SRCS unix/tclAppInit.c)
+endif (WIN32)
set_property(SOURCE win/tclAppInit.c APPEND PROPERTY COMPILE_DEFINITIONS
TCL_UNICODE)
add_executable(tclsh ${TCLSH_SRCS})
@@ -1335,7 +1326,7 @@
install(TARGETS tclsh DESTINATION bin)
set_target_properties(tclsh PROPERTIES VERSION
${TCL_VERSION_MAJOR}.${TCL_VERSION_MINOR})
-SET(TCL_HDRS
+set(TCL_HDRS
generic/tcl.h
generic/tclDecls.h
generic/tclPlatDecls.h
@@ -1349,7 +1340,7 @@
# Set up build directory copies of the public headers
foreach(hdrfile ${TCL_HDRS})
get_filename_component(hf ${hdrfile} NAME)
- if(NOT CMAKE_CONFIGURATION_TYPES)
+ if (NOT CMAKE_CONFIGURATION_TYPES)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${hdrfile}
${CMAKE_BINARY_DIR}/${INCLUDE_DIR}/${hf} COPYONLY)
else(NOT CMAKE_CONFIGURATION_TYPES)
foreach(CFG_TYPE ${CMAKE_CONFIGURATION_TYPES})
@@ -1356,7 +1347,7 @@
string(TOUPPER "${CFG_TYPE}" CFG_TYPE_UPPER)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${hdrfile}
${CMAKE_BINARY_DIR_${CFG_TYPE_UPPER}}/${INCLUDE_DIR}/${hf} COPYONLY)
endforeach(CFG_TYPE ${CMAKE_CONFIGURATION_TYPES})
- endif(NOT CMAKE_CONFIGURATION_TYPES)
+ endif (NOT CMAKE_CONFIGURATION_TYPES)
endforeach(hdrfile ${TCL_HDRS})
MARK_AS_ADVANCED(TCL_LIBRARIES TCL_CONF_PREFIX TCL_INCLUDE_PATH
TCL_INCLUDE_PATH)
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits