Wall Street traders sometimes root for year-end "Santa Claus rallies" but hardly a creature was stirring as stocks finished slightly higher on the quietest full day of US trading in more than a year.
Health care companies brought in most of the gains. Major US indexes stayed in a narrow range throughout the day.
Drugmakers and other companies in health care did the best, while retailers continued to take small losses just before the holiday.
Energy companies also slipped and they took their first weekly loss since the beginning of November. The Dow Jones industrial average, however, rose for the seventh week in a row.
Defence contractor Lockheed Martin fell after President-elect Donald Trump again tweeted that the company's F-35 fighter jet costs too much. The stock is down almost six percent this month.
"This is a negotiating tactic," said Josh Sullivan, a Seaport Global analyst who covers aerospace and defence companies. "You're seeing the negative portion of the negotiation in public where privately they may be more constructive."
The Dow Jones industrial average picked up 14.93 points, or 0.1%, to 19,933.81.
The Standard & Poor's 500 index gained 2.83 points, or 0.1%, to 2,263.79. The Nasdaq composite rose 15.27 points, or 0.3%, to 5,462.69.
Small-company stocks did far better, as the Russell 2000 climbed 8.85 points, or 0.6%, to 1,371.51.
Fewer than two billion shares changed hands on the New York Stock Exchange. That is barely half the volume of an average day. The last full trading day with that little activity was in October 2015.
Lockheed Martin fell after Mr Trump said on Twitter that Lockheed's F-35 fighter jet costs too much and that he has asked Boeing to "price-out" a comparable F-18 jet.
He complained earlier this month about the costs of the F-35, which brought in about 20% of Lockheed's revenue last year. Lockheed gave up 3.21 US dollars, or 1.3%, to 249.59 dollars.
This month Mr Trump also criticised Boeing for the cost of the next Air Force One. The presidential jet is far less significant for Boeing than the F-35 is for Lockheed, however, and Boeing shares were only briefly affected.
Mr Sullivan said his tweets are a new type of bad publicity for defence companies. But even if the president-elect periodically criticises the companies in public, investors are still optimistic about their prospects under his administration.
If Mr Trump builds up the US nuclear arsenal, as he proposed doing in a tweet on Thursday, that would also involve more military spending.
"Ultimately (Trump) ran on a strong defence spending platform," he said. Defence stocks have done better than the rest of the market overall since the election.
So far, investor optimism that his spending plans could boost economic growth is outweighing any concerns about his trade proposals, brash style and Twitter pronouncements, which have moved company stocks at times.
That may change when he's in office and can more easily back up his comments with executive actions and policy shifts.
Drug companies made small gains on Friday. Botox maker Allergan rose 5.09 dollars, or 2.6%, to 199.08 dollars.
Bristol-Myers Squibb picked up 85 cents, or 1.4%, to 59.61 dollars and health insurer Aetna added 1.26 dollars, or 1%, to 125.95 dollars.
Cintas, a uniform rental company, slipped after its second-quarter profit fell short of Wall Street's forecasts. Analysts said its first-aid business, which sells products like first-aid kits, eyewash stations and emergency cabinets, had a disappointing quarter.
The stock lost 3.73 dollars, or 3.1%, to 116.36 dollars.
Benchmark US crude added seven cents to close at 53.02 dollars a barrel in New York. Brent crude, the international standard, rose 11 cents to close at 55.16 dollars a barrel in London.
In other energy trading, natural gas prices continued to climb as investors anticipated that colder weather will lead to more demand for home heating.
Natural gas futures rose 12 cents, or 3.5%, to 3.66 dollars per 1,000 cubic feet. Wholesale gasoline added 2 cents to 1.63 dollars a gallon and heating oil stood still at 2.48 dollars a gallon.
The dollar slid to 117.26 yen from 117.60 yen. The euro rose to 1.0452 dollars from 1.0433 dollars.
Bond prices rose. The yield on the 10-year Treasury note fell to 2.54% from 2.55%.
The price of gold rose 2.90 dollars to 1,133.60 dollars an ounce. Silver lost 11 cents to 15.76 dollars an ounce. Copper gave up 2 cents to 2.48 dollars a pound.
Britain's FTSE 100 and the CAC-40 in France both rose 0.1%. In Germany, the DAX lost 0.1%. The Hang Seng of Hong Kong retreated 0.3% and the Kospi in South Korea finished slightly lower.
Japanese markets were closed for a holiday.